<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-7753537778483857068</id><updated>2012-02-04T10:39:37.034+01:00</updated><category term='gnuplot'/><category term='wubi'/><category term='script nautilus'/><category term='flash'/><category term='auctex'/><category term='ipe'/><category term='ttf'/><category term='grub'/><category term='tastiera'/><category term='latex'/><category term='iso'/><category term='pidgin'/><category term='info'/><category term='caratteri'/><category term='cups'/><category term='openoffice'/><category term='terminale'/><category term='gnome'/><category term='firefox'/><category term='make'/><category term='audio'/><category term='avanzamento versione'/><category term='git'/><category term='xbindkeys'/><category term='hard disk'/><category term='internet'/><category term='script'/><category term='debian'/><category term='video'/><category term='stampa'/><category term='maxima'/><category term='statistiche'/><category term='repository'/><category term='hardware'/><category term='openoffice.org'/><category term='driver'/><category term='emacs'/><category term='boot'/><category term='cestino'/><category term='octave'/><category term='wifi'/><category term='matematica'/><category term='gtk'/><category term='at'/><category term='diff'/><category term='font'/><category term='qtiplot'/><category term='kde'/><category term='pdf'/><category term='pacchetti'/><category term='guida'/><category term='pcmanfm'/><category term='wireless'/><category term='lxde'/><category term='rai'/><category term='scheda video'/><category term='amministrazione'/><category term='problema'/><category term='qtoctave'/><category term='calc'/><category term='screenshot'/><category term='atheros'/><category term='sospensione'/><category term='ubuntu'/><category term='touchpad'/><category term='portatili'/><category term='gui-apt-key'/><category term='nvidia'/><category term='minimale'/><category term='gmail'/><category term='compilazione'/><category term='synaptic'/><category term='nautilus'/><title type='text'>L'ennesimo blog su Ubuntu</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>67</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-7169877376832878061</id><published>2011-12-21T16:00:00.000+01:00</published><updated>2011-12-22T14:08:52.083+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='gtk'/><category scheme='http://www.blogger.com/atom/ns#' term='guida'/><category scheme='http://www.blogger.com/atom/ns#' term='problema'/><category scheme='http://www.blogger.com/atom/ns#' term='kde'/><category scheme='http://www.blogger.com/atom/ns#' term='terminale'/><title type='text'>Integrare le applicazioni GTK+ in KDE</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-jJsfZD-fCaM/TvINEYB5NyI/AAAAAAAAAI0/w0VKEzcpWao/s1600/gtk-kde.png" imageanchor="1" style="clear:left; float:left; margin-right:1em; margin-bottom:1em"&gt;&lt;img border="0" height="174" width="320" src="http://3.bp.blogspot.com/-jJsfZD-fCaM/TvINEYB5NyI/AAAAAAAAAI0/w0VKEzcpWao/s320/gtk-kde.png" /&gt;&lt;/a&gt;&lt;/div&gt;Le applicazioni scritte con il toolkit &lt;a href="http://it.wikipedia.org/wiki/GTK%2B"&gt;GTK+&lt;/a&gt; (come praticamente tutte le applicazioni dell'ambiente desktop GNOME) non sono nativamente ben integrate nell'ambiente desktop KDE (che invece si basa sul toolkit &lt;a href="http://it.wikipedia.org/wiki/Qt_%28toolkit%29"&gt;Qt&lt;/a&gt;).&lt;br /&gt;&lt;br /&gt;Il toolkit GTK+ permette di impostare un tema per tutte le applicazioni che lo utilizzano, quindi per migliorare l'aspetto di queste applicazioni all'interno di KDE abbiamo bisogno di un tema che assomigli il più possibile al tema in uso su KDE. Esistono diversi temi GTK+ che ben si integrano con le applicazioni Qt, come &lt;a href="http://kde-look.org/content/show.php?content=40492"&gt;QtCurve&lt;/a&gt;, però in particolare segnalo l'esistenza del tema &lt;a href="https://projects.kde.org/projects/playground/artwork/oxygen-gtk"&gt;Oxygen-gtk&lt;/a&gt; che è una traduzione in GTK+ del tema predefinito di KDE, cioè &lt;a href="http://www.oxygen-icons.org/"&gt;Oxygen&lt;/a&gt;. Non è scopo di questa guida spiegare come si installano in generale i temi GTK+, vedremo solo come si installa Oxygen-gtk su Debian e sistemi derivati e come fare per utilizzarlo. Sugli altri sistemi operativi (Fedora, openSUSE, Gentoo, Arch Linux, eccetera) potranno cambiare i nomi dei pacchetti da installare e il gestore pacchetti da usare, ma le operazioni da eseguire saranno grosso modo le stesse.&lt;br /&gt;&lt;br /&gt;È possibile installare Oxygen-gtk scaricandolo da &lt;a href="http://kde-look.org/content/show.php/?content=136216"&gt;qui&lt;/a&gt; e seguendo le istruzioni riportate nella pagina oppure, su Debian e derivate, installando il pacchetto &lt;a href="apt:gtk2-engines-oxygen"&gt;&lt;tt&gt;gtk2-engines-oxygen&lt;/tt&gt;&lt;/a&gt; tramite il gestore pacchetti &lt;a href="http://wiki.ubuntu-it.org/AmministrazioneSistema/InstallareProgrammi/GestorePacchetti"&gt;Synaptic&lt;/a&gt; o sul terminale con il comando&lt;br /&gt;&lt;pre class="src src-fundamental"&gt;sudo apt-get install gtk2-engines-oxygen&lt;/pre&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-NZ-e_2oTphM/TvIZ0bhmpMI/AAAAAAAAAJA/Yy397N6av_c/s1600/gtk-appearance.png" imageanchor="1" style="clear:right; float:right;margin-left:1em; margin-bottom:1em"&gt;&lt;img border="0" height="174" width="320" src="http://4.bp.blogspot.com/-NZ-e_2oTphM/TvIZ0bhmpMI/AAAAAAAAAJA/Yy397N6av_c/s320/gtk-appearance.png" /&gt;&lt;/a&gt;&lt;/div&gt;Ora dobbiamo solo impostare questo tema come quello utilizzato dalle applicazioni GTK+. Esiste una procedura manuale ben descritta in &lt;a href="https://wiki.archlinux.org/index.php/Uniform_Look_for_QT_and_GTK_Applications#Manually_procedure"&gt;questa guida&lt;/a&gt; (in inglese) del wiki di Arch Linux, ma esiste anche una procedura automatica basata sull'utilizzo di un'apposita interfaccia grafica. Ci sono diversi semplici programmi che permettono di selezionare il tema GTK+ fra i quali &lt;a href="apt:gtk-chtheme"&gt;&lt;tt&gt;gtk-chtheme&lt;/tt&gt;&lt;/a&gt; e &lt;a href="apt:lxappearance"&gt;&lt;tt&gt;lxappearance&lt;/tt&gt;&lt;/a&gt;, ma dal momento che stiamo parlando dell'ambiente desktop KDE suggerisco di utilizzare il selettore dei temi GTK che fa parte degli strumenti di sistema di KDE. Per installarlo su Debian e derivate bisogna installare il pacchetto &lt;a href="apt:kde-config-gtk-style"&gt;&lt;tt&gt;kde-config-gtk-style&lt;/tt&gt;&lt;/a&gt; con Synaptic oppure via terminale con il comando&lt;br /&gt;&lt;pre class="src src-fundamental"&gt;sudo apt-get install kde-config-gtk-style&lt;/pre&gt;Si può adesso selezionare il tema in &lt;a href="http://docs.kde.org/stable/it/kdebase-workspace/systemsettings/index.html"&gt;&lt;b&gt;Impostazioni di sistema&lt;/b&gt;&lt;/a&gt;, scegliendo &lt;b&gt;Aspetto delle applicazioni&lt;/b&gt; e impostando nella scheda &lt;b&gt;Aspetto GTK&lt;/b&gt; lo stile &lt;tt&gt;oxygen-gtk&lt;/tt&gt;.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-1N7aXMhxxnc/TvIh5lIqUOI/AAAAAAAAAJM/vb48OUlDN9w/s1600/gtk-kde2.png" imageanchor="1" style="clear:left; float:left; margin-right:1em; margin-bottom:1em"&gt;&lt;img border="0" height="174" width="320" src="http://1.bp.blogspot.com/-1N7aXMhxxnc/TvIh5lIqUOI/AAAAAAAAAJM/vb48OUlDN9w/s320/gtk-kde2.png" /&gt;&lt;/a&gt;&lt;/div&gt;Manca solo un'ultima operazione prima di finire. Scegliendo lo stile con il programma &lt;b&gt;Impostazioni di sistema&lt;/b&gt; abbiamo creato un &lt;a href="http://elubuntu.blogspot.com/2009/06/file-e-cartelle-nascosti-nella-home.html"&gt;file nascosto&lt;/a&gt; il cui percorso è &lt;tt&gt;~/.gtkrc-2.0-kde&lt;/tt&gt; (ricordo che la tilde &lt;tt&gt;~&lt;/tt&gt; è un'abbreviazione del percorso della home dell'utente corrente), ma per rendere efficace questa impostazione il file deve chiamarsi &lt;tt&gt;~/.gtkrc-2.0&lt;/tt&gt; quindi dobbiamo rinominare il file &lt;tt&gt;~/.gtkrc-2.0-kde&lt;/tt&gt; in &lt;tt&gt;~/.gtkrc-2.0&lt;/tt&gt;, oppure copiare &lt;tt&gt;~/.gtkrc-2.0-kde&lt;/tt&gt; e incollarlo con il nuovo nome &lt;tt&gt;~/.gtkrc-2.0&lt;/tt&gt; oppure creare un link simbolico &lt;tt&gt;~/.gtkrc-2.0&lt;/tt&gt; che punta a &lt;tt&gt;~/.gtkrc-2.0-kde&lt;/tt&gt;. Per visualizzare i file nascosti in Dolphin bisogna premere la scorciatoia da tastiera &lt;b&gt;ALT&lt;/b&gt; + &lt;b&gt;.&lt;/b&gt; oppure queste operazioni possono essere eseguite da terminale rispettivamente con i seguenti comandi (basta eseguirne solo uno, quello che si preferisce!):&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;mv ~/.gtkrc-2.0-kde ~/.gtkrc-2.0 &lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;per rinominare il file&lt;/span&gt;&lt;br /&gt;cp ~/.gtkrc-2.0-kde ~/.gtkrc-2.0 &lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;per copiare il file&lt;/span&gt;&lt;br /&gt;ln -s ~/.gtkrc-2.0-kde ~/.gtkrc-2.0 &lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;per creare il link simbolico&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;Adesso tutte le applicazioni GTK che verranno aperte risulteranno finalmente ben integrate con le applicazioni Qt di KDE.&lt;br /&gt;&lt;br /&gt;Un'ultima osservazione: l'impostazione del tema GTK viene letta solo dai programmi eseguiti dall'utente nella cui cartella home si trova il file &lt;tt&gt;.gtkrc-2.0&lt;/tt&gt;, ciò permette agli utenti di uno stesso sistema di usare diversi temi. Questo vale anche per l'utente "root", pertanto se si vuole che anche le applicazioni eseguite come utente "root" utilizzino il tema scelto bisogna inserire nella home dell'utente "root" il file &lt;tt&gt;.gtkrc-2.0&lt;/tt&gt;. Per fare questo possiamo copiare il file nella home di "root" oppure creare all'interno di questa un link simbolico al nostro file &lt;tt&gt;.gtkrc-2.0&lt;/tt&gt; in modo che tutte le modifiche apportate al nostro file &lt;tt&gt;.gtkrc-2.0&lt;/tt&gt; valgano automaticamente anche per l'utente "root" senza dover modificare ulteriormente suoi file. Da terminale queste due operazioni possono essere eseguite con i comandi (di nuovo, va usato solo uno di questi comandi, quello che si preferisce)&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;sudo cp ~/.gtkrc-2.0 ~root/.gtkrc-2.0 &lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;per copiare il file&lt;/span&gt;&lt;br /&gt;sudo ln -s ~/.gtkrc-2.0 ~root/.gtkrc-2.0 &lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;per creare il link simbolico&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Per quanto ne so al momento il tema Oxygen-gtk funziona solo con le applicazioni che utilizzano la versione 2 del toolkit GTK+, per essere più precisi non mi risulta che sia facile utilizzare in maniera semplice questo tema anche con le applicazioni che utilizzano GTK+ 3. Sono ben accetti suggerimenti in questa direzione&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-7169877376832878061?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/7169877376832878061/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2011/12/integrare-le-applicazioni-gtk-in-kde.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/7169877376832878061'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/7169877376832878061'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2011/12/integrare-le-applicazioni-gtk-in-kde.html' title='Integrare le applicazioni GTK+ in KDE'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-jJsfZD-fCaM/TvINEYB5NyI/AAAAAAAAAI0/w0VKEzcpWao/s72-c/gtk-kde.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-4066058435675128196</id><published>2011-08-11T16:59:00.000+02:00</published><updated>2011-08-11T16:59:37.042+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='guida'/><category scheme='http://www.blogger.com/atom/ns#' term='amministrazione'/><category scheme='http://www.blogger.com/atom/ns#' term='terminale'/><category scheme='http://www.blogger.com/atom/ns#' term='driver'/><title type='text'>Compilare moduli del kernel con DKMS</title><content type='html'>Il &lt;a href="http://linux.dell.com/dkms/"&gt;Dynamic Kernel Module Support&lt;/a&gt; (DKMS) è un sistema che permette di generare moduli per il kernel Linux i quali non sono presenti nel sorgente del kernel stesso. Quando viene installata una nuova versione del kernel Linux, normalmente è necessario ricompilare questi moduli. Nei sistemi Debian e derivati (e probabilmente anche in altre distribuzioni con kernel Linux), questa operazione viene svolta automaticamente eseguendo lo script &lt;tt&gt;/usr/lib/dkms/dkms_autoinstaller&lt;/tt&gt;. A volte, però, si potrebbe voler ricompilare manualmente un modulo, oppure compilarlo per una versione del kernel diversa da quella per cui esiste già. La sintassi da usare per ricompilare un modulo chiamato &lt;tt&gt;&amp;lt;modulo&amp;gt;&lt;/tt&gt; è la seguente&lt;br /&gt;&lt;pre class="src src-fundamental"&gt;sudo dkms build -m &lt;i&gt;&amp;lt;modulo&amp;gt;&lt;/i&gt; -v &lt;i&gt;&amp;lt;versione_modulo&amp;gt;&lt;/i&gt; -k &lt;i&gt;&amp;lt;versione_kernel&amp;gt;&lt;/i&gt;&lt;br /&gt;sudo dkms install -m &lt;i&gt;&amp;lt;modulo&amp;gt;&lt;/i&gt; -v &lt;i&gt;&amp;lt;versione_modulo&amp;gt;&lt;/i&gt; -k &lt;i&gt;&amp;lt;versione_kernel&amp;gt;&lt;/i&gt;&lt;br /&gt;sudo dkms status&lt;br /&gt;&lt;/pre&gt;Il primo comando serve per compilare il modulo, nella versione &lt;tt&gt;&amp;lt;versione_modulo&amp;gt;&lt;/tt&gt; e per il kernel &lt;tt&gt;&amp;lt;versione_kernel&amp;gt;&lt;/tt&gt;, il secondo comando serve per installare il modulo compilato (prima di procedere con questo comando assicurarsi che la compilazione sia andata a buon fine. La buona riuscita o meno della compilazione viene segnalata dai messaggi di output del comando &lt;tt&gt;dkms build&lt;/tt&gt;) e l'ultimo serve per verificare lo stato dei moduli gestiti da DKMS, per controllare che i moduli desiderati siano stati effettivamente installati. Per conoscere la versione del kernel attualmente in uso si può dare nel terminale il comando &lt;tt&gt;uname -r&lt;/tt&gt;.&lt;br /&gt;&lt;br /&gt;Quando si installa una nuova versione dei driver proprietari della scheda video (farò l'esempio con una scheda Nvidia), viene compilato solo il modulo per il kernel attualmente in uso (oltre ai kernel successivamente installati, come abbiamo già detto prima). Si potrebbe, però, voler compilare il modulo anche per una versione del kernel diversa da quella in uso (come può essere una versione precedente). Ammettiamo quindi per esempio che il modulo che si voglia ricompilare è il driver Nvidia, chiamato &lt;tt&gt;nvidia&lt;/tt&gt;, che la sua versione è la 280.13 e che il kernel per il quale si vuole ricompilare il modulo è il &lt;tt&gt;3.0.0-1-686-pae&lt;/tt&gt;. Dunque dovremo dare i seguenti comandi per compilare e installare il modulo:&lt;br /&gt;&lt;pre class="src src-fundamental"&gt;sudo dkms build -m nvidia -v 280.13 -k 3.0.0-1-686-pae&lt;br /&gt;sudo dkms install -m nvidia -v 280.13 -k 3.0.0-1-686-pae&lt;br /&gt;&lt;/pre&gt;Alla fine potremo usare il comando &lt;tt&gt;dkms status&lt;/tt&gt; per controllare lo stato dei moduli così installati. L'output sarà qualcosa di questo tipo&lt;br /&gt;&lt;pre class="src src-fundamental"&gt;nvidia, 280.13, 2.6.38-2-686, i686: installed&lt;br /&gt;nvidia, 280.13, 2.6.39-2-686-pae, i686: installed&lt;br /&gt;nvidia, 280.13, 3.0.0-1-686-pae, i686: installed&lt;br /&gt;&lt;/pre&gt;Naturalmente consiglio di consultare il manuale di DKMS (&lt;tt&gt;man dkms&lt;/tt&gt;) per avere maggiori informazioni sul programma e le sue opzioni.&lt;br /&gt;&lt;br /&gt;Invece di usare &lt;tt&gt;dkms build&lt;/tt&gt; e &lt;tt&gt;dkms install&lt;/tt&gt;, è possibile utilizzare il comando &lt;tt&gt;dkms autoinstall&lt;/tt&gt; che installa, per una specifica versione del kernel, tutti i moduli che sono già installati per altre versioni del kernel diverse da quella indicata. La sintassi è&lt;br /&gt;&lt;pre class="src src-fundamental"&gt;sudo dkms autoinstall --kernelver &lt;i&gt;&amp;lt;versione_kernel&amp;gt;&lt;/i&gt;&lt;br /&gt;&lt;/pre&gt;Si può anche eseguire direttamente lo script &lt;tt&gt;dkms_autoinstaller&lt;/tt&gt; citato all'inizio (il breve script &lt;tt&gt;dkms_autoinstaller&lt;/tt&gt; richiama a sua volta &lt;tt&gt;dkms autoinstall&lt;/tt&gt; al suo interno). La sintassi è&lt;br /&gt;&lt;pre class="src src-fundamental"&gt;/usr/lib/dkms/dkms_autoinstaller start&lt;br /&gt;&lt;/pre&gt;se si vogliono compilare i moduli per il kernel attualmente in uso oppure&lt;br /&gt;&lt;pre class="src src-fundamental"&gt;/usr/lib/dkms/dkms_autoinstaller start &lt;i&gt;&amp;lt;versione_kernel&amp;gt;&lt;/i&gt;&lt;br /&gt;&lt;/pre&gt;se si vuole indicare una particolare versione del kernel.&lt;br /&gt;&lt;br /&gt;I comandi sopra spiegati sono validi solo se il modulo è già predisposto per la compilazione con DKMS. Per aggiungere il supporto a DKMS a dei moduli di cui si possiede il codice sorgente si può vedere &lt;a href="http://www.linuxqualityhelp.it/supporto/viewtopic.php?f=25&amp;t=9128"&gt;qui&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;I comandi di questo post sono stati presi dal seguente messaggio dell'utente bugsbunny sul forum forums.debian.net: &lt;a href="http://forums.debian.net/viewtopic.php?f=6&amp;t=66973#p382913"&gt;http://forums.debian.net/viewtopic.php?f=6&amp;t=66973#p382913&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-4066058435675128196?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/4066058435675128196/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2011/08/compilare-moduli-del-kernel-con-dkms.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/4066058435675128196'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/4066058435675128196'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2011/08/compilare-moduli-del-kernel-con-dkms.html' title='Compilare moduli del kernel con DKMS'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-4011832929696027818</id><published>2011-06-26T15:28:00.002+02:00</published><updated>2011-06-26T15:34:12.362+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='problema'/><category scheme='http://www.blogger.com/atom/ns#' term='audio'/><category scheme='http://www.blogger.com/atom/ns#' term='hardware'/><category scheme='http://www.blogger.com/atom/ns#' term='amministrazione'/><category scheme='http://www.blogger.com/atom/ns#' term='terminale'/><category scheme='http://www.blogger.com/atom/ns#' term='driver'/><title type='text'>Conflitto fra i moduli delle schede audio</title><content type='html'>Sul mio vecchio &lt;a href="http://it.wikipedia.org/wiki/Muletto"&gt;muletto&lt;/a&gt; ho due schede audio, una integrata e una esterna. Questo è la parte dell'output del comando &lt;code&gt;lspci -v&lt;/code&gt; che riguarda le mie due schede audio&lt;br /&gt;&lt;pre class="src src-fundamental"&gt;00:02.7 Multimedia audio controller: Silicon Integrated Systems [SiS] AC'97 Sound Controller (rev a0)&lt;br /&gt;        Subsystem: C-Media Electronics Inc CMI9739(A) on ECS K7SOM+ motherboard&lt;br /&gt;        Flags: bus master, medium devsel, latency 64, IRQ 11&lt;br /&gt;        I/O ports at d800 [size=256]&lt;br /&gt;        I/O ports at d400 [size=64]&lt;br /&gt;        Capabilities: &amp;lt;access denied&amp;gt;&lt;br /&gt;        Kernel modules: snd-intel8x0&lt;br /&gt;&lt;br /&gt;00:11.0 Multimedia audio controller: Creative Labs SB Live! EMU10k1 (rev 08)&lt;br /&gt;        Subsystem: Creative Labs SBLive! 5.1 Model SB0100&lt;br /&gt;        Flags: bus master, medium devsel, latency 64, IRQ 11&lt;br /&gt;        I/O ports at d000 [size=32]&lt;br /&gt;        Capabilities: &amp;lt;access denied&amp;gt;&lt;br /&gt;        Kernel driver in use: EMU10K1_Audigy&lt;br /&gt;        Kernel modules: snd-emu10k1&lt;br /&gt;&lt;/pre&gt;La scheda integrata è la prima (e segue lo standard &lt;a href="http://en.wikipedia.org/wiki/AC%2797"&gt;AC'97&lt;/a&gt;), la seconda è la scheda esterna. Le casse audio sono collegate alla scheda esterna e su Windows (mi duole ammetterlo) l'audio funziona senza problemi, mentre su Ubuntu non sentivo nulla fino a qualche minuto fa (in realtà l'audio funzionava prima di &lt;a href="http://forum.ubuntu-it.org/index.php/topic,324218.0.html"&gt;aggiornare&lt;/a&gt; Ubuntu alla versione 9.10 Karmic Koala). Ho impiegato più di un anno e mezzo per capire quale fosse il problema ma l'importante è arrivarci (e da solo!): facevano conflitto i driver (o "moduli") delle due schede (anche se non so perché con le precedenti versioni di Ubuntu questo problema non si presentasse). I nomi dei moduli del kernel utilizzati dalle due schede possono essere letti nell'output del comando &lt;code&gt;lspci -v&lt;/code&gt;: &lt;code&gt;snd-intel8x0&lt;/code&gt; per la scheda integrata (cioè quella che non uso) e &lt;code&gt;snd-emu10k1&lt;/code&gt; per la scheda esterna. &lt;br /&gt;&lt;br /&gt;Per mettere in blacklist un modulo del kernel chiamato &lt;code&gt;&lt;i&gt;modulo&lt;/i&gt;&lt;/code&gt; bisogna mettere in un file con estensione &lt;code&gt;.conf&lt;/code&gt; della cartella &lt;code&gt;/etc/modprobe.d&lt;/code&gt; la riga&lt;br /&gt;&lt;pre class="src src-conf"&gt;&lt;span style="color: #a0522d;"&gt;blacklist&lt;/span&gt; &lt;i&gt;modulo&lt;/i&gt;&lt;br /&gt;&lt;/pre&gt;Dunque per far tornare magicamente l'audio sul mio computer ho dato il seguente comando da terminale&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;&lt;span style="color: #7a378b;"&gt;echo&lt;/span&gt; &lt;span style="color: #8b2252;"&gt;"blacklist snd_intel8x0"&lt;/span&gt; | sudo tee /etc/modprobe.d/blacklist-audio.conf&lt;br /&gt;&lt;/pre&gt;È possibile aggiungere un &lt;a href="http://it.wikipedia.org/wiki/Commento"&gt;commento&lt;/a&gt;, per ricordarsi perché si è aggiunto un modulo alla blacklist, facendo iniziare le righe di commento con &lt;code&gt;#&lt;/code&gt;. Per esempio ho modificato il file appena creato (con i diritti di amministratore perché si trova sotto &lt;code&gt;/etc&lt;/code&gt;) aggiungendo il seguente commento&lt;br /&gt;&lt;pre class="src src-conf"&gt;&lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;Metto il modulo della scheda audio integrata nella blacklist per&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;evitare che entri in conflitto con quello della scheda esterna&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #a0522d;"&gt;blacklist&lt;/span&gt; snd_intel8x0&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-4011832929696027818?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/4011832929696027818/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2011/06/conflitto-fra-i-moduli-delle-schede.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/4011832929696027818'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/4011832929696027818'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2011/06/conflitto-fra-i-moduli-delle-schede.html' title='Conflitto fra i moduli delle schede audio'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-7618692521423757698</id><published>2011-04-24T21:01:00.001+02:00</published><updated>2011-04-24T21:05:03.854+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='problema'/><category scheme='http://www.blogger.com/atom/ns#' term='sospensione'/><title type='text'>Schermo nero al ritorno dalla sospensione</title><content type='html'>Dopo aver aggiornato il kernel Linux alla versione 2.6.38 (ma non sono sicuro che sia questa particolare versione del kernel la causa del problema) al ritorno dalla &lt;a href="http://en.wikipedia.org/wiki/Sleep_mode"&gt;sospensione&lt;/a&gt; trovo lo schermo nero senza la possibilità di fare nulla. In realtà basta premere ALT + CTRL + F7 (o altro tasto funzione associato alla console in cui è avviato il server grafico X.org) per far comparire la la schermata per l'inserimento della password e tornare a utilizzare il proprio computer. Nel file di log &lt;code&gt;/var/log/pm-suspend.log&lt;/code&gt; in corrispondenza del ritorno dalla sospensione compare qualcosa del tipo:&lt;br /&gt;&lt;pre class="src src-fundamental"&gt;/usr/lib/pm-utils/sleep.d/99video suspend suspend: success.&lt;br /&gt;Sun Apr 24 17:17:00 CEST 2011: performing suspend&lt;br /&gt;Sun Apr 24 17:18:39 CEST 2011: Awake.&lt;br /&gt;Sun Apr 24 17:18:39 CEST 2011: Running hooks for resume&lt;br /&gt;Running hook /usr/lib/pm-utils/sleep.d/99video resume suspend:&lt;br /&gt;Couldn't get a file descriptor referring to the console&lt;br /&gt;VT_DISALLOCATE: Device or resource busy&lt;br /&gt;deallocvt: could not deallocate console 63&lt;br /&gt;&lt;/pre&gt;Come segnalato &lt;a href="http://wiki.debian.org/InstallingDebianOn/HP/EliteBook8540w/Squeeze"&gt;qui&lt;/a&gt; per risolvere il problema dovrebbe essere sufficiente creare il file &lt;code&gt;/etc/pm/config.d/10no-vt-switch&lt;/code&gt; contenente semplicemente&lt;br /&gt;&lt;pre class="src src-fundamental"&gt;ADD_PARAMETERS=" --quirk-no-chvt "&lt;br /&gt;&lt;/pre&gt;però non ho provato personalmente questa soluzione. Il problema comunque potrebbe essere molto legato al particolare hardware del computer usato. Quindi controllate se i vostri componenti sono gli stessi di quelli riportati sul Wiki di Debian.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-7618692521423757698?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/7618692521423757698/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2011/04/schermo-nero-al-ritorno-dalla.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/7618692521423757698'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/7618692521423757698'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2011/04/schermo-nero-al-ritorno-dalla.html' title='Schermo nero al ritorno dalla sospensione'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-117998335856982788</id><published>2011-04-24T20:20:00.023+02:00</published><updated>2011-04-24T20:49:43.179+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='latex'/><category scheme='http://www.blogger.com/atom/ns#' term='guida'/><category scheme='http://www.blogger.com/atom/ns#' term='emacs'/><title type='text'>Emacs: effettuare il controllo della sintassi di documenti LaTeX</title><content type='html'>Nel post &lt;a href="http://elubuntu.blogspot.com/2010/10/opzioni-utili-per-comporre-documenti.html"&gt;Opzioni utili per comporre documenti LaTeX in GNU Emacs + AUCTeX&lt;/a&gt; illustrai le principali opzioni di Emacs che trovo particolarmente utili per scrivere documenti LaTeX. Ora voglio mostrare l'impostazione di uno strumento esterno a AUCTeX ma che ritengo molto utile.&lt;br /&gt;&lt;br /&gt;Il pacchetto &lt;a href="http://flymake.sourceforge.net/"&gt;Flymake&lt;/a&gt;, presente di default nelle ultime versioni di GNU Emacs, permette di effettuare un controllo della &lt;a href="http://it.wikipedia.org/wiki/Sintassi_%28informatica%29"&gt;sintassi&lt;/a&gt; al volo, cioè durante la scrittura di un codice. Quindi per trovare un errore formale all'interno di questo non sarà necessario avviare manualmente la compilazione ma sarà Emacs stesso ad avvisare della loro presenza. Per fare questo Flymake  si appoggia a programmi esterni di controllo della sintassi. Per quanto riguarda LaTeX esistono almeno un paio di programmi specifici: &lt;a href="http://www.ctan.org/tex-archive/support/lacheck/"&gt;Lacheck&lt;/a&gt; e &lt;a href="http://baruch.ev-en.org/proj/chktex/"&gt;ChkTeX&lt;/a&gt;. Il primo non è più sviluppato dal 1997 e ha difficoltà con macro molto elaborate, quindi molto probabilmente non vorrete utilizzarlo (sebbene sia lo strumento predefinito da Emacs per effettuare l'analisi sintattica, non al volo, che si avvia con &lt;code&gt;C-c C-c Check RET&lt;/code&gt;. È possibile cambiare questa impostazione modificando la variabile &lt;code&gt;TeX-command-list&lt;/code&gt; come visto prima), il secondo progetto è un po' più attivo. Inoltre per effettuare un controllo della sintassi è possibile anche utilizzare i compilatori stessi &lt;code&gt;latex&lt;/code&gt;, &lt;code&gt;pdflatex&lt;/code&gt;, ecc., utilizzati con delle opportune opzioni di compilazione che vedremo più avanti.&lt;br /&gt;&lt;br /&gt;Volendo usare ChkTex bisogna inserire nel proprio file di &lt;a href="http://www.gnu.org/software/emacs/manual/html_node/emacs/Init-File.html#Init-File"&gt;inizializzazione&lt;/a&gt; &lt;code&gt;~/.emacs&lt;/code&gt; il seguente codice:&lt;br /&gt;&lt;pre class="src src-emacs-lisp"&gt;(&lt;span style="color: #a020f0;"&gt;require&lt;/span&gt; '&lt;span style="color: #008b8b;"&gt;flymake&lt;/span&gt;)&lt;br /&gt;(&lt;span style="color: #a020f0;"&gt;defun&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;flymake-get-tex-args&lt;/span&gt; (file-name)&lt;br /&gt;  (list &lt;span style="color: #8b2252;"&gt;"chktex"&lt;/span&gt; (list &lt;span style="color: #8b2252;"&gt;"-q"&lt;/span&gt; &lt;span style="color: #8b2252;"&gt;"-v0"&lt;/span&gt; file-name)))&lt;br /&gt;(add-hook 'LaTeX-mode-hook 'flymake-mode) &lt;br /&gt;&lt;/pre&gt;Analizziamo nel dettaglio queste istruzioni: la riga (&lt;span style="color: #a020f0;"&gt;require&lt;/span&gt; '&lt;span style="color: #008b8b;"&gt;flymake&lt;/span&gt;) dice semplicemente a Emacs di caricare il pacchetto &lt;code&gt;flymake&lt;/code&gt;; le due successive specificano il programma esterno da usare (nel caso specifico &lt;code&gt;chktex&lt;/code&gt;) e i relativi argomenti da passare, nel nostro caso &lt;code&gt;-q -v0&lt;/code&gt; seguiti dal nome del file che si sta modificando contenuto nella variabile &lt;code&gt;file-name&lt;/code&gt;. Per capire cosa fanno le varie opzioni consultare il &lt;a href="http://manpages.ubuntu.com/chktex"&gt;manuale&lt;/a&gt;. Infine l'ultima fa in modo che ogni volta che si apre un documento con la major mode &lt;code&gt;LaTeX-mode&lt;/code&gt; venga attivata la minor mode &lt;code&gt;flymake-mode&lt;/code&gt;. Se non si vuole aggiungere questa ultima funzione sarà necessario attivare manualmente la modalità con &lt;code&gt;M-x flymake-mode&lt;/code&gt;.&lt;br /&gt;&lt;br /&gt;Penso sia ora chiaro come bisogna modificare il codice precedente per appoggiarsi a uno strumento diverso da ChkTex. Bisogna sostituire a &lt;span style="color: #8b2252;"&gt;chktex&lt;/span&gt; il nome del programma desiderato e inserire al posto di &lt;span style="color: #8b2252;"&gt;"-q"&lt;/span&gt; &lt;span style="color: #8b2252;"&gt;"-v0"&lt;/span&gt; l'eventuale elenco di opzioni volute. Per esempio, volendo usare Lacheck, senza alcuna opzione passata da linea di comando, dovremo inserire&lt;br /&gt;&lt;pre class="src src-emacs-lisp"&gt;(&lt;span style="color: #a020f0;"&gt;require&lt;/span&gt; '&lt;span style="color: #008b8b;"&gt;flymake&lt;/span&gt;)&lt;br /&gt;(&lt;span style="color: #a020f0;"&gt;defun&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;flymake-get-tex-args&lt;/span&gt; (file-name)&lt;br /&gt;  (list &lt;span style="color: #8b2252;"&gt;"lacheck"&lt;/span&gt; (list file-name)))&lt;br /&gt;(add-hook 'LaTeX-mode-hook 'flymake-mode) &lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Come detto, è possibile anche utilizzare il compilatore stesso per effettuare un controllo della sintassi. Infatti quando compiliamo un documento il compilatore ci avvisa della presenza di errori. Tuttavia normalmente l'esecuzione della compilazione viene interrotta al punto in cui viene incontrato un errore, mentre noi vogliamo che tutto il codice sorgente venga analizzato affinché siano riportati tutti gli errori presenti e ciò può essere realizzato passando a &lt;code&gt;pdflatex&lt;/code&gt; l'opzione &lt;code&gt;-interaction=nonstopmode&lt;/code&gt;. Altre opzioni utili nel nostro caso sono &lt;code&gt;-draftmode&lt;/code&gt;, che impedisce la creazione del file di output in PDF velocizzando così l'esecuzione del controllo, e &lt;code&gt;-file-line-error&lt;/code&gt;, per fare in modo che Flymake possa effettuare correttamente il &lt;a href="http://it.wikipedia.org/wiki/Parsing"&gt;parsing&lt;/a&gt; dell'output di &lt;code&gt;pdflatex&lt;/code&gt;. Dunque per utilizzare &lt;code&gt;pdflatex&lt;/code&gt; come strumento di controllo della sintassi dovremo inserire il seguente codice nel nostro file di inizializzazione:&lt;br /&gt;&lt;pre class="src src-emacs-lisp"&gt;(&lt;span style="color: #a020f0;"&gt;require&lt;/span&gt; '&lt;span style="color: #008b8b;"&gt;flymake&lt;/span&gt;)&lt;br /&gt;(&lt;span style="color: #a020f0;"&gt;defun&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;flymake-get-tex-args&lt;/span&gt; (file-name)&lt;br /&gt;  (list &lt;span style="color: #8b2252;"&gt;"pdflatex"&lt;/span&gt;&lt;br /&gt;        (list &lt;span style="color: #8b2252;"&gt;"-file-line-error"&lt;/span&gt; &lt;span style="color: #8b2252;"&gt;"-draftmode"&lt;/span&gt; &lt;span style="color: #8b2252;"&gt;"-interaction=nonstopmode"&lt;/span&gt; file-name)))&lt;br /&gt;(add-hook 'LaTeX-mode-hook 'flymake-mode) &lt;br /&gt;&lt;/pre&gt;Ricordo sempre che si potrebbe non voler inserire l'ultima riga preferendo attivare manualmente la modalità &lt;code&gt;flymake-mode&lt;/code&gt; solo nei documenti in cui si desidera effettivamente svolgere l'analisi sintattica.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-kMqp3yDqO_k/TbRsyA0vgEI/AAAAAAAAAIo/kZKJa3jTGCU/s1600/emacs-flymake-latex.png" imageanchor="1" style="clear:left; float:left;margin-right:1em; margin-bottom:1em"&gt;&lt;img border="0" height="183" width="320" src="http://2.bp.blogspot.com/-kMqp3yDqO_k/TbRsyA0vgEI/AAAAAAAAAIo/kZKJa3jTGCU/s320/emacs-flymake-latex.png" /&gt;&lt;/a&gt;&lt;/div&gt;Una volta attivata la modalità &lt;code&gt;flymake-mode&lt;/code&gt; gli errori saranno evidenziati in rosso e passando sul testo incriminato con il mouse oppure usando il comando &lt;code&gt;M-x flymake-display-err-menu-for-current-line&lt;/code&gt; verrà mostrata la spiegazione dell'errore segnalato.&lt;br /&gt;&lt;br /&gt;Devo evidenziare che &lt;code&gt;pdflatex&lt;/code&gt; è piuttosto dispendioso dal punto di vista delle risorse di sistema e inoltre molto lento per i documenti grandi. Facendo delle prove su un documento di circa 200 pagine nel documento di output ChkTex e Lacheck hanno impiegato meno di mezzo secondo per concludere l'analisi dell'intero codice sorgente, contro gli oltre 20 secondi di &lt;code&gt;pdflatex&lt;/code&gt;. D'altra parte il programma più affidabile è il compilatore stesso, infatti è l'unico dei tre programmi qui discussi in grado di riconoscere i comandi o pacchetti non esistenti. Se si preferisce la velocità a discapito della precisione allora lo strumento ideale è ChkTex, se invece si vuole un controllo più preciso e mirato allora &lt;code&gt;pdflatex&lt;/code&gt; fa al caso vostro (in particolare nei documenti piccoli).&lt;br /&gt;&lt;br /&gt;Trovate maggiori informazioni su Flymake sul sito Emacs Wiki alle pagine &lt;a href="http://www.emacswiki.org/emacs/FlyMake"&gt;Fly Make&lt;/a&gt; e &lt;a href="http://www.emacswiki.org/emacs/FlymakeTex"&gt;Flymake Tex&lt;/a&gt; (da cui questo post prende ispirazione), oppure nel manuale consultabile dentro Emacs con &lt;code&gt;C-h i d m Flymake RET&lt;/code&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-117998335856982788?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/117998335856982788/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2011/04/emacs-effettuare-il-controllo-della.html#comment-form' title='3 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/117998335856982788'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/117998335856982788'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2011/04/emacs-effettuare-il-controllo-della.html' title='Emacs: effettuare il controllo della sintassi di documenti LaTeX'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-kMqp3yDqO_k/TbRsyA0vgEI/AAAAAAAAAIo/kZKJa3jTGCU/s72-c/emacs-flymake-latex.png' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-5393495796046579047</id><published>2011-04-04T23:05:00.001+02:00</published><updated>2011-04-16T13:01:12.821+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='debian'/><category scheme='http://www.blogger.com/atom/ns#' term='guida'/><category scheme='http://www.blogger.com/atom/ns#' term='iso'/><category scheme='http://www.blogger.com/atom/ns#' term='amministrazione'/><title type='text'>Aggiungere "Monta archivi" in Debian</title><content type='html'>Chi ha usato, almeno provato o visto Ubuntu, dalla versione 8.10 in poi, probabilmente avrà notato che facendo clic con il tasto destro sull'icona di un'&lt;a href="http://it.wikipedia.org/wiki/Immagine_disco"&gt;immagine&lt;/a&gt; &lt;a href="http://it.wikipedia.org/wiki/.iso"&gt;.iso&lt;/a&gt; è possibile scegliere l'opzione «Apri con Monta archivi». Questa opzione permette di montare rapidamente e per via grafica l'immagine che altrimenti potrebbe essere montata su un terminale con un comando di questo tipo&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;mount -o loop -t iso9660 &lt;i&gt;/percorso/della/immagine.iso&lt;/i&gt; &lt;i&gt;/punto/di/mount&lt;/i&gt;&lt;br /&gt;&lt;/pre&gt;in cui bisognerà naturalmente sostituire a &lt;code&gt;&lt;i&gt;/percorso/della/immagine.iso&lt;/i&gt;&lt;/code&gt; il percorso dell'immagine che si vuole montare e a &lt;code&gt;&lt;i&gt;/punto/di/mount&lt;/i&gt;&lt;/code&gt; il percorso del punto di mount scelto e precedentemente creato.&lt;br /&gt;&lt;br /&gt;È possibile aggiungere l'opzione «Apri con Monta archivi» anche in Debian (dovrebbe funzionare da Lenny in poi, personalmente ho provato su Wheezy testing) semplicemente copiando il lanciatore utilizzato in Ubuntu per aggiungere quell'opzione. Prima di fare ciò bisogna installare, se non già presente, il pacchetto &lt;code&gt;gvfs-backends&lt;/code&gt;:&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;apt-get install gvfs-backends&lt;br /&gt;&lt;/pre&gt;A questo punto è possibile scaricare il lanciatore dall'indirizzo &lt;a href="http://bazaar.launchpad.net/~ubuntu-branches/ubuntu/natty/nautilus/natty/download/head:/mountarchive.desktop-20100222031218-t6ar3c8jxy685cre-2783/mount-archive.desktop"&gt;http://bazaar.launchpad.net/~ubuntu-branches/ubuntu/natty/nautilus/natty/download/head:/mountarchive.desktop-20100222031218-t6ar3c8jxy685cre-2783/mount-archive.desktop&lt;/a&gt; (come ottenere questo indirizzo, che potrebbe cambiare in futuro: andare in &lt;a href="https://code.launchpad.net/ubuntu/+source/nautilus"&gt;https://code.launchpad.net/ubuntu/+source/nautilus&lt;/a&gt;, selezionare il ramo principale &lt;code&gt;lp:ubuntu/nautilus&lt;/code&gt; → Browse the code, reperire il file &lt;code&gt;debian/mount-archive.desktop&lt;/code&gt;) e metterlo nella cartella &lt;code&gt;~/.local/share/applications&lt;/code&gt; se si vuole che sia disponibile solo per il proprio utente, altrimenti in &lt;code&gt;/usr/share/applications/&lt;/code&gt; affinché possa essere usato da tutti gli utenti del sistema. Da terminale può essere scaricato con il comando&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;wget -P ~/.local/share/applications http://bazaar.launchpad.net/~ubuntu-branches/ubuntu/natty/nautilus/natty/download/head:/mountarchive.desktop-20100222031218-t6ar3c8jxy685cre-2783/mount-archive.desktop&lt;br /&gt;&lt;/pre&gt;nel primo caso, per il secondo:&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;wget -P /usr/share/applications http://bazaar.launchpad.net/~ubuntu-branches/ubuntu/natty/nautilus/natty/download/head:/mountarchive.desktop-20100222031218-t6ar3c8jxy685cre-2783/mount-archive.desktop&lt;br /&gt;&lt;/pre&gt;usando i diritti di root per poter scrivere sotto &lt;code&gt;/usr&lt;/code&gt;.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-YhuZuHxGoFs/Tal2twdVfnI/AAAAAAAAAIg/REXeFBTZTvc/s1600/monta_archivi.png" imageanchor="1" style="clear:right; float:right; margin-left:1em; margin-bottom:1em"&gt;&lt;img border="0" height="320" width="214" src="http://4.bp.blogspot.com/-YhuZuHxGoFs/Tal2twdVfnI/AAAAAAAAAIg/REXeFBTZTvc/s320/monta_archivi.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;È possibile aggiungere nel lanciatore, utilizzando un qualsiasi editor di testo, la riga&lt;br /&gt;&lt;pre class="src src-conf-unix"&gt;&lt;span style="color: #a0522d;"&gt;Name&lt;/span&gt;[&lt;span style="color: #008b8b;"&gt;it_IT&lt;/span&gt;]=Monta archivi&lt;br /&gt;&lt;/pre&gt;in modo che il nome dell'opzione sia in italiano se il sistema è localizzato in italiano.&lt;br /&gt;&lt;br /&gt;Ho detto che questo sistema funziona su Debian, in realtà dovrebbe funzionare su qualsiasi sistema GNU/Linux che abbia il programma &lt;code&gt;gvfsd-archive&lt;/code&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-5393495796046579047?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/5393495796046579047/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2011/04/aggiungere-monta-archivi-in-debian.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/5393495796046579047'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/5393495796046579047'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2011/04/aggiungere-monta-archivi-in-debian.html' title='Aggiungere &quot;Monta archivi&quot; in Debian'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-YhuZuHxGoFs/Tal2twdVfnI/AAAAAAAAAIg/REXeFBTZTvc/s72-c/monta_archivi.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-2859051927613150614</id><published>2011-02-26T15:41:00.000+01:00</published><updated>2011-02-26T15:41:34.141+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='octave'/><category scheme='http://www.blogger.com/atom/ns#' term='compilazione'/><category scheme='http://www.blogger.com/atom/ns#' term='problema'/><category scheme='http://www.blogger.com/atom/ns#' term='pacchetti'/><category scheme='http://www.blogger.com/atom/ns#' term='terminale'/><title type='text'>Compilare GNU Octave 3.4.0</title><content type='html'>Lo scorso 8 febbraio è &lt;a href="http://www.gnu.org/software/octave/news.html"&gt;stata rilasciata&lt;/a&gt; la versione 3.4.0 di &lt;a href="http://www.gnu.org/software/octave/"&gt;GNU Octave&lt;/a&gt;, sostituto &lt;a href="http://it.wikipedia.org/wiki/Software_libero"&gt;libero&lt;/a&gt; di &lt;a href="http://www.mathworks.it/products/matlab/"&gt;MATLAB&lt;/a&gt;. Trovate le novità di questa versione &lt;a href="http://www.gnu.org/software/octave/NEWS-3.4.html"&gt;qui&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;In questo post spiegherò come compilare questa versione di GNU Octave. Qualche mese fa &lt;a href="http://elubuntu.blogspot.com/2009/07/compilare-gnu-octave-322.html"&gt;avevamo visto&lt;/a&gt; come compilare la versione 3.2.2. Non sarà molto diverso compilare la 3.4.0, anzi, personalmente ho incontrato molti meno problemi nel compilare la 3.4.0 rispetto alla 3.2.2. La guida è stata sperimentata su Ubuntu 10.10, non dovrebbero esserci praticamente differenze per compilare GNU Octave su Debian Sid. Per le altre distribuzioni GNU/Linux le uniche cose differenti saranno probabilmente i comandi da usare per richiamare il gestore pacchetti utilizzato.&lt;br /&gt;&lt;br /&gt;Per prima cosa installiamo il compilatore installando il metapacchetto &lt;a href="apt:build-essential"&gt;&lt;code&gt;build-essential&lt;/code&gt;&lt;/a&gt;. Questo può essere installato da &lt;a href="http://wiki.ubuntu-it.org/AmministrazioneSistema/Synaptic"&gt;Synaptic&lt;/a&gt;, oppure da terminale con il comando:&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;sudo apt-get install build-essential&lt;br /&gt;&lt;/pre&gt;Il metapacchetto &lt;code&gt;build-essential&lt;/code&gt; installa i compilatori se non già presenti, se sono già installati... non fa praticamente nulla. In questo modo comunque ci assicuriamo di averli installati. Dopo di ciò installiamo le dipendenze, ovvero le librerie necessarie per la compilazione di GNU Octave. Possiamo fare ciò molto velocemente da terminale con il comando:&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;sudo apt-get build-dep octave3.2&lt;br /&gt;&lt;/pre&gt;Questo comando installerà le dipendenze necessarie per compilare il ramo 3.2 di GNU Octave, ma queste sono praticamente identiche a quelle del ramo 3.4. Manca solo una libreria da installare. Non impedisce la compilazione, però potrebbe essere utile in alcuni casi. Si chiama &lt;a href="apt:bison"&gt;&lt;code&gt;bison&lt;/code&gt;&lt;/a&gt; e può essere installata come al solito da Synaptic oppure da terminale con il comando&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;sudo apt-get install bison&lt;br /&gt;&lt;/pre&gt;Scarichiamo ora il codice sorgente di GNU OCtave: &lt;a href="http://www.gnu.org/software/octave/download.html"&gt;http://www.gnu.org/software/octave/download.html&lt;/a&gt;. La versione 3.4.0 può essere scaricata da terminale con il comando&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;wget ftp://ftp.gnu.org/gnu/octave/octave-3.4.0.tar.bz2&lt;br /&gt;&lt;/pre&gt;Scompattiamo l'archivio. Lo si può fare per via grafica oppure da terminale con il comando&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;tar xjvf octave-3.4.0.tar.bz2&lt;br /&gt;&lt;/pre&gt;Entriamo con il terminale nella cartella principale del codice sorgente di GNU Octave:&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;cdd octave-3.4.0/&lt;br /&gt;&lt;/pre&gt;Leggiamo i file &lt;code&gt;README&lt;/code&gt; e &lt;code&gt;INSTALL&lt;/code&gt; che spiegano come si compila il programma. Per prima cosa dobbiamo configurare il programma usando lo script &lt;code&gt;configure&lt;/code&gt;. Potete vedere l'elenco delle opzioni di configurazione possibili richiamando lo script con l'opzione &lt;code&gt;--help&lt;/code&gt;:&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;./configure --help&lt;br /&gt;&lt;/pre&gt;Possiamo ora configurare GNU Octave:&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;./configure&lt;br /&gt;&lt;/pre&gt;Se lo ritenete necessario potete, naturalmente, aggiungere le opzioni che preferite. Se tutto è andato a buon fine dovreste leggere alla fine dell'output di &lt;code&gt;./configure&lt;/code&gt; qualcosa di questo tipo:&lt;br /&gt;&lt;pre class="src src-fundamental"&gt;Octave is now configured for i686-pc-linux-gnu&lt;br /&gt;&lt;br /&gt;  Source directory:            .&lt;br /&gt;  Installation prefix:         /usr/local&lt;br /&gt;  C compiler:                  gcc  -mieee-fp  -Wall -W -Wshadow -Wformat -Wpointer-arith -Wmissing-prototypes -Wstrict-prototypes -Wwrite-strings -Wcast-align -Wcast-qual -g -O2 -pthread&lt;br /&gt;  C++ compiler:                g++  -mieee-fp  -I/usr/include/freetype2    -Wall -W -Wshadow -Wold-style-cast -Wformat -Wpointer-arith -Wwrite-strings -Wcast-align -Wcast-qual -g -O2&lt;br /&gt;  Fortran compiler:            gfortran -O -mieee-fp&lt;br /&gt;  Fortran libraries:            -L/usr/lib/gcc/i686-linux-gnu/4.4.5 -L/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib -L/lib/../lib -L/usr/lib/../lib -L/usr/lib/gcc/i686-linux-gnu/4.4.5/../../.. -L/usr/lib/i686-linux-gnu -lgfortranbegin -lgfortran -lm&lt;br /&gt;  Lex libraries:               &lt;br /&gt;  LIBS:                        -lm  &lt;br /&gt;&lt;br /&gt;  AMD CPPFLAGS:                &lt;br /&gt;  AMD LDFLAGS:                 &lt;br /&gt;  AMD libraries:               -lamd&lt;br /&gt;  BLAS libraries:              -lblas&lt;br /&gt;  CAMD CPPFLAGS:               &lt;br /&gt;  CAMD LDFLAGS:                &lt;br /&gt;  CAMD libraries:              -lcamd&lt;br /&gt;  CARBON libraries:            &lt;br /&gt;  CCOLAMD CPPFLAGS:            &lt;br /&gt;  CCOLAMD LDFLAGS:             &lt;br /&gt;  CCOLAMD libraries:           -lccolamd&lt;br /&gt;  CHOLMOD CPPFLAGS:            &lt;br /&gt;  CHOLMOD LDFLAGS:             &lt;br /&gt;  CHOLMOD libraries:           -lcholmod&lt;br /&gt;  COLAMD CPPFLAGS:             &lt;br /&gt;  COLAMD LDFLAGS:              &lt;br /&gt;  COLAMD libraries:            -lcolamd&lt;br /&gt;  CURL CPPFLAGS:               &lt;br /&gt;  CURL LDFLAGS:                &lt;br /&gt;  CURL libraries:              -lcurl&lt;br /&gt;  CXSPARSE CPPFLAGS:           &lt;br /&gt;  CXSPARSE LDFLAGS:            &lt;br /&gt;  CXSPARSE libraries:          -lcxsparse&lt;br /&gt;  DL libraries:                -ldl&lt;br /&gt;  FFTW3 CPPFLAGS:              &lt;br /&gt;  FFTW3 LDFLAGS:               &lt;br /&gt;  FFTW3 libraries:             -lfftw3&lt;br /&gt;  FFTW3F CPPFLAGS:             &lt;br /&gt;  FFTW3F LDFLAGS:              &lt;br /&gt;  FFTW3F libraries:            -lfftw3f&lt;br /&gt;  fontconfig CFLAGS:            &lt;br /&gt;  fontconfig LIBS:             -lfontconfig  &lt;br /&gt;  FT2_CFLAGS:                  -I/usr/include/freetype2&lt;br /&gt;  FT2_LIBS:                    -lfreetype -lz&lt;br /&gt;  GLPK CPPFLAGS:               &lt;br /&gt;  GLPK LDFLAGS:                &lt;br /&gt;  GLPK libraries:              -lglpk&lt;br /&gt;  graphics CFLAGS:             -g -O2 -D_THREAD_SAFE -D_REENTRANT&lt;br /&gt;  graphics LIBS:               -Wl,-Bsymbolic-functions -lfltk_gl -lfltk&lt;br /&gt;  Magick++ CPPFLAGS:           -I/usr/include/GraphicsMagick  &lt;br /&gt;  Magick++ LDFLAGS:             &lt;br /&gt;  Magick++ libraries:          -lGraphicsMagick++ -lGraphicsMagick  &lt;br /&gt;  HDF5 CPPFLAGS:               &lt;br /&gt;  HDF5 LDFLAGS:                &lt;br /&gt;  HDF5 libraries:              -lhdf5&lt;br /&gt;  LAPACK libraries:            -llapack&lt;br /&gt;  OPENGL libraries:            -lfontconfig   -lGL -lGLU&lt;br /&gt;  PTHREAD flags:               -pthread&lt;br /&gt;  PTHREAD libraries:           &lt;br /&gt;  QHULL CPPFLAGS:              &lt;br /&gt;  QHULL LDFLAGS:               &lt;br /&gt;  QHULL libraries:             -lqhull&lt;br /&gt;  QRUPDATE libraries:          -lqrupdate&lt;br /&gt;  READLINE libraries:          -lreadline&lt;br /&gt;  REGEX libraries:             -L/usr/lib -lpcre&lt;br /&gt;  TERM libraries:              -lncurses&lt;br /&gt;  UMFPACK libraries:           -lumfpack&lt;br /&gt;  X11 include flags:           &lt;br /&gt;  X11 libraries:               -lX11&lt;br /&gt;  Z CPPFLAGS:                  &lt;br /&gt;  Z LDFLAGS:                   &lt;br /&gt;  Z libraries:                 -lz&lt;br /&gt;&lt;br /&gt;  Default pager:               less&lt;br /&gt;  gnuplot:                     gnuplot&lt;br /&gt;&lt;br /&gt;  Do internal array bounds checking:  false&lt;br /&gt;  Build static libraries:             false&lt;br /&gt;  Build shared libraries:             true&lt;br /&gt;  Dynamic Linking:                    true (dlopen)&lt;br /&gt;  Include support for GNU readline:   true&lt;br /&gt;  64-bit array dims and indexing:     false&lt;br /&gt;&lt;/pre&gt;Se non avessimo installato &lt;code&gt;bison&lt;/code&gt; avremmo inoltre letto un avviso di questo tipo:&lt;br /&gt;&lt;pre class="src src-fundamental"&gt;configure: WARNING: I didn't find bison, but it's only a problem if you need to reconstruct parse.cc&lt;br /&gt;configure: WARNING: OpenGL libs (GL and GLU) not found. Native graphics will be disabled.&lt;br /&gt;configure: WARNING: &lt;br /&gt;configure: WARNING: I didn't find the necessary libraries to compile native&lt;br /&gt;configure: WARNING: graphics.  It isn't necessary to have native graphics,&lt;br /&gt;configure: WARNING: but you will need to have gnuplot installed or you won't&lt;br /&gt;configure: WARNING: be able to use any of Octave's plotting commands&lt;br /&gt;configure: WARNING: &lt;br /&gt;configure: &lt;br /&gt;configure: NOTE: libraries may be skipped if a library is not found OR&lt;br /&gt;configure: NOTE: if the library on your system is missing required features.&lt;br /&gt;&lt;/pre&gt;Questo è il messaggio che ho ottenuto io dopo la prima configurazione (non avevo però ancora installato &lt;code&gt;bison&lt;/code&gt;). Come potete vedere mi è stata segnalata l'assenza delle librerie OpenGL. Ho risolto questo "problema" (non è un vero e proprio problema perché si tratta solo di un avviso, non è un errore) installando i pacchetti &lt;a href="apt:libgl1-mesa-dev"&gt;&lt;code&gt;libgl1-mesa-dev&lt;/code&gt;&lt;/a&gt; e &lt;a href="apt:libglu1-mesa-dev"&gt;&lt;code&gt;libglu1-mesa-dev&lt;/code&gt;&lt;/a&gt;:&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;sudo apt-get install libgl1-mesa-dev libglu1-mesa-dev&lt;br /&gt;&lt;/pre&gt;Normalmente questo problema non dovrebbe verificarsi perché questi pacchetti dovrebbero essere installati usando &lt;code&gt;apt-get build-dep octave3.2&lt;/code&gt;, non so bene per quale motivo a me sono stati rimossi.&lt;br /&gt;&lt;br /&gt;Dopo aver finalmente configurato GNU Octave possiamo compilarlo con il comando&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;make&lt;br /&gt;&lt;/pre&gt;Per rendere più veloce la compilazione, chi ha un processore &lt;a href="http://it.wikipedia.org/wiki/Multi_core"&gt;multicore&lt;/a&gt; può passare a &lt;code&gt;make&lt;/code&gt; l'opzione &lt;code&gt;-j &lt;i&gt;n&lt;/i&gt;&lt;/code&gt;, dove &lt;code&gt;&lt;i&gt;n&lt;/i&gt;&lt;/code&gt; è il numero di core del processore (o meglio di job simultanei che può gestire, però per semplificare il discorso parliamo di core). Quindi chi, per esempio, ha un processore con quattro core potrà usare per compilare GNU Octave il comando&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;make -j 4&lt;br /&gt;&lt;/pre&gt;Se la compilazione va a buon fine (a seconda della potenza di calcolo del proprio computer questa operazione può richiedere da poche decine di minuti a qualche ora) alla fine dell'operazione leggerete sul terminale un messaggio di questo tipo:&lt;br /&gt;&lt;pre class="src src-fundamental"&gt;Octave successfully built.  Now choose from the following:&lt;br /&gt;&lt;br /&gt;   ./run-octave    - to run in place to test before installing&lt;br /&gt;   make check      - to run the tests&lt;br /&gt;   make install    - to install (PREFIX=/usr/local)&lt;br /&gt;&lt;br /&gt;make[2]: uscita dalla directory &lt;span style="color: #8b2252;"&gt;"/[...]/octave-3.4.0"&lt;/span&gt;&lt;br /&gt;make[1]: uscita dalla directory &lt;span style="color: #8b2252;"&gt;"/[...]/octave-3.4.0"&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;Come potete vedere, prima di installare Octave potete avviarlo per verificare se funzioni con il comando&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;./run-octave&lt;br /&gt;&lt;/pre&gt;Infine possiamo installarlo con il comando&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;sudo make install&lt;br /&gt;&lt;/pre&gt;Se invece vogliamo crare un pacchetto .deb per rendere più semplice la successiva installazione o rimozione possiamo usare &lt;a href="http://wiki.ubuntu-it.org/Programmazione/Checkinstall"&gt;&lt;code&gt;checkinstall&lt;/code&gt;&lt;/a&gt;:&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;sudo checkinstall&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-2859051927613150614?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/2859051927613150614/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2011/02/compilare-gnu-octave-340.html#comment-form' title='2 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/2859051927613150614'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/2859051927613150614'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2011/02/compilare-gnu-octave-340.html' title='Compilare GNU Octave 3.4.0'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-104337334766449757</id><published>2011-02-20T01:22:00.008+01:00</published><updated>2011-02-23T00:04:39.105+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='qtiplot'/><category scheme='http://www.blogger.com/atom/ns#' term='compilazione'/><category scheme='http://www.blogger.com/atom/ns#' term='guida'/><category scheme='http://www.blogger.com/atom/ns#' term='problema'/><category scheme='http://www.blogger.com/atom/ns#' term='pacchetti'/><category scheme='http://www.blogger.com/atom/ns#' term='terminale'/><title type='text'>Compilare QtiPlot 0.9.8.4</title><content type='html'>&lt;i&gt;&lt;b&gt;NOTA&lt;/b&gt;: Renato Rivoira, che ringrazio, ha curato la traduzione in italiano di QtiPlot e del suo manuale. Nei &lt;a href="http://elubuntu.blogspot.com/2011/02/compilare-qtiplot-0984.html?showComment=1298382878769#c3918272301506214139"&gt;commenti&lt;/a&gt; a questo post chiede, a chi sia in grado di farlo, di aiutarlo a revisionare le sue traduzioni. Potete contattarlo mandandogli una mail all'indirizzo &lt;code&gt;renatoriv AT ​libero PUNTO it&lt;/code&gt;.&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;Il 18 febbraio 2011 è stata rilasciata la versione finale di &lt;a href="http://soft.proindependent.com/qtiplot.html"&gt;QtiPlot&lt;/a&gt; 0.9.8.4, un programma per l'analisi dei dati, equivalente &lt;a href="http://it.wikipedia.org/wiki/Software_libero"&gt;libero&lt;/a&gt; di &lt;a href="http://www.originlab.com/"&gt;Origin&lt;/a&gt;. Questa versione porta con sé numerose novità che potete leggere &lt;a href="http://soft.proindependent.com/news.html"&gt;qui&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;QtiPlot è un programma un po' particolare perché il codice sorgente è rilasciato con licenza &lt;a href="http://it.wikipedia.org/wiki/GNU_General_Public_License"&gt;GPL&lt;/a&gt; ma lo sviluppatore distribuisce i binari precompilati a &lt;a href="http://soft.proindependent.com/pricing.html"&gt;pagamento&lt;/a&gt;. Ciò non è in alcun modo in contrasto con il concetto di software libero perché nella sua definizione non si parla di prezzo. La confusione di "software libero" con "software gratuito" è maggiormente presente nelle persone di lingua inglese, poiché in questa la parola "free" ha il duplice significato di "libero" e "gratuito". Anche chi usa questo software avendolo compilato da sé può fare una donazione a favore del progetto all'indirizzo &lt;a href="http://soft.proindependent.com/why_donate.html"&gt;http://soft.proindependent.com/why_donate.html&lt;/a&gt; per permettere allo sviluppatore di portare avanti il suo progetto.&lt;br /&gt;&lt;br /&gt;In questo post spiegherò come fare a compilare QtiPlot. Questa guida è per Ubuntu Maverick Meerkat 10.10 (e probabilmente funzionerà senza troppi problemi anche per Debian), per le altre distribuzioni ci potranno essere piccoli differenze per quanto riguarda i comandi che richiamano il gestore dei pacchetti, i nomi dei pacchetti e la disponibilità di questi.&lt;br /&gt;&lt;br /&gt;Innanzitutto cominciamo con l'installare tutte le dipendenze necessarie per la compilazione. In un terminale dare&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;sudo apt-get install build-essential&lt;br /&gt;sudo apt-get build-dep qtiplot&lt;br /&gt;&lt;/pre&gt;Il primo comando installa (se non già presente, ma è difficile che non lo sia già) le utility necessarie per compilare la maggior parte dei programmi, il secondo installa le principali librerie che necessita QtiPlot per essere compilato. Nelle ultime versioni QtiPlot ha aggiunto altre dipendenze i cui pacchetti non sono disponibili nella versione di Ubuntu considerata, quindi prima di procedere con la compilazione di QtiPlot stesso dovremo compilare altri programmi.&lt;br /&gt;&lt;br /&gt;Scarichiamo il codice sorgente di QtiPlot all'indirizzo &lt;a href="http://download.berlios.de/qtiplot/qtiplot-0.9.8.4.tar.bz2"&gt;http://download.berlios.de/qtiplot/qtiplot-0.9.8.4.tar.bz2&lt;/a&gt;. Da terminale si può usare&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;wget http://download.berlios.de/qtiplot/qtiplot-0.9.8.4.tar.bz2&lt;br /&gt;&lt;/pre&gt;Scompattiamo l'archivio dove ci pare (se non siete in grado di farlo da terminale, vi ricordo che è possibile farlo attraverso interfaccia grafica) e spostiamoci con il terminale nella cartella in cui si trova il sorgente:&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;tar xjvf qtiplot-0.9.8.4.tar.bz2&lt;br /&gt;cd qtiplot-0.9.8.4/&lt;br /&gt;&lt;/pre&gt;Aprite il file &lt;code&gt;README.html&lt;/code&gt; presente nella cartella del sorgente (è &lt;b&gt;sempre&lt;/b&gt; buona norma leggere i file &lt;code&gt;README&lt;/code&gt; e/o &lt;code&gt;INSTALL&lt;/code&gt;, o simili, prima di procedere con la compilazione di un programma). Come potete vedere le dipendenze necessarie sono le seguenti: Qt (&amp;gt;= 4.5.0), GSL, muParser (1.32), zlib e libpng. Tutti questi pacchetti sono stati installati (se non erano già presenti) con il comando &lt;code&gt;sudo apt-get build-dep qtiplot&lt;/code&gt;. Inoltre servono delle versioni leggermente modificate delle librerie Qwt (5.2) e QwtPlot3D, ma queste sono presenti nella sottocartella &lt;code&gt;3rdparty/&lt;/code&gt; del codice sorgente di QtiPlot, quindi non bisogna scaricare nulla di nuovo per questo elencato finora. Altre librerie suggerite sono &lt;a href="http://soft.proindependent.com/qtexengine/"&gt;QTeXEngine&lt;/a&gt;, &lt;a href="http://www.alglib.net/"&gt;ALGLIB&lt;/a&gt; (2.6) e &lt;a href="http://www.stat.tamu.edu/%7Earedd/tamuanova/"&gt;TAMUANOVA&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Compiliamo queste librerie. Salveremo i codici sorgenti di queste nella sottocartella &lt;code&gt;3rdparty/&lt;/code&gt;, per comodità, quindi spostiamoci in questa cartella:&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;cd 3rdparty/&lt;br /&gt;&lt;/pre&gt;Scarichiamo e scompattiamo l'archivio contenente il codice sorgente di QTeXEngine:&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;wget http://download.berlios.de/qtiplot/QTeXEngine-0.3-opensource.zip&lt;br /&gt;unzip QTeXEngine-0.3-opensource.zip&lt;br /&gt;cd QTeXEngine&lt;br /&gt;&lt;/pre&gt;Compiliamo la libreria (le istruzioni sono presenti nel file &lt;code&gt;README.txt&lt;/code&gt;:&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;qmake&lt;br /&gt;make&lt;br /&gt;&lt;/pre&gt;Se tutto è andato bene (lo potete controllare guardando l'exit status con il comando &lt;code&gt;echo $?&lt;/code&gt;, se è &lt;code&gt;0&lt;/code&gt; allora l'operazione si è conclusa correttamente) torniamo nella cartella superiore, scarichiamo il codice sorgente di ALGLIB e compiliamolo:&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;cd ..&lt;br /&gt;wget http://www.alglib.net/translator/re/alglib-2.6.0.cpp.zip&lt;br /&gt;unzip alglib-2.6.0.cpp.zip ; mv cpp alglib&lt;br /&gt;cd alglib&lt;br /&gt;&lt;/pre&gt;Le istruzioni per la compilazione di questa libreria sono presenti nel file &lt;code&gt;manual.cpp.html&lt;/code&gt;. Bisogna eseguire lo script &lt;code&gt;build&lt;/code&gt; passando come argomento il compilatore da usare, nel nostro caso GCC. Lo script &lt;code&gt;build&lt;/code&gt; non ha i permessi di esecuzione, quindi prima di avviarlo dobbiamo &lt;a href="http://elubuntu.blogspot.com/2009/09/rendere-eseguibile-un-file.html"&gt;rendere il file eseguibile&lt;/a&gt;:&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;chmox +x build&lt;br /&gt;./build gcc&lt;br /&gt;&lt;/pre&gt;Se anche questa operazione si è conclusa con successo (controlliamo l'exit status con &lt;code&gt;echo $?&lt;/code&gt;: se otteniamo 0 allora è andato tutto bene) andiamo avanti possiamo compilare TAMUANOVA. Spostiamoci nella cartella superiore, scarichiamo il codice sorgente di TAMUANOVA, scompattiamo l'archivio ed entriamo nella cartella del codice sorgente di questa libreria:&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;cd ..&lt;br /&gt;wget http://www.stat.tamu.edu/~aredd/tamuanova/tamu_anova-0.2.tar.gz&lt;br /&gt;tar xzvf tamu_anova-0.2.tar.gz ; mv tamu_anova-0.2/ tamu_anova/&lt;br /&gt;cd tamu_anova/&lt;br /&gt;&lt;/pre&gt;Compiliamo questa libreria (le istruzioni sono presenti nel file &lt;code&gt;INSTALL&lt;/code&gt;):&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;./configure&lt;br /&gt;make&lt;br /&gt;&lt;/pre&gt;Controllate l'exit status con &lt;code&gt;echo $?&lt;/code&gt;. Se ottenete &lt;code&gt;0&lt;/code&gt; la compilazione è andata a buon fine. Non è necessario installare la libreria (come neanche le precedenti), è sufficiente averla compilata. Prima di procedere dobbiamo modificare un file: &lt;code&gt;3rdparty/qwtplot3d/qwtplot3d.pro&lt;/code&gt;. Questo file contiene le istruzioni per la compilazione della libreria QwtPlot3D (che avverrà successivamente quando compileremo QtiPlot). Alla fine di questo file bisogna aggiungere la seguente riga:&lt;br /&gt;&lt;pre class="src src-conf-unix"&gt;&lt;span style="color: sienna;"&gt;unix:CONFIG +&lt;/span&gt;= staticlib&lt;br /&gt;&lt;/pre&gt;affinché venga compilata &lt;a href="http://en.wikipedia.org/wiki/Static_library"&gt;staticamente&lt;/a&gt; (suggerimento tratto da &lt;a href="http://ubuntuforums.org/showthread.php?p=10482004#post10482004"&gt;qui&lt;/a&gt;).&lt;br /&gt;&lt;br /&gt;Ritorniamo con il terminale nella cartella principale del codice sorgente di QtiPlot (che si trova due cartelle superiori rispetto alla carella di ALGLIB in cui ci trovavamo prima):&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;cd ../..&lt;br /&gt;&lt;/pre&gt;Prima di iniziare la compilazione vera e propria ci sono ancora diverse operazioni da fare. Prima di tutto dobbiamo creare un file chiamato &lt;code&gt;build.conf&lt;/code&gt; da posizionare nella cartella del codice sorgente di QtiPlot e che contiene alcune istruzioni che servono per la compilazione. Questo file dovrà essere realizzato sulla base del modello &lt;code&gt;build.conf.example&lt;/code&gt; che si trova nella stessa cartella. Per la precisione, &lt;code&gt;build.conf&lt;/code&gt; contiene alcune opzioni e variabili per la compilazione e i percorsi delle librerie da utilizzare (oppure le corrispondenti opzioni di compilazione). In questo file la variabile &lt;code&gt;QTI_ROOT&lt;/code&gt; è uguale al percorso della cartella principale del codice sorgente di QtiPlot. Ho modificato &lt;code&gt;build.conf.example&lt;/code&gt; in base ai reali percorsi delle librerie utilizzate ed ecco il mio &lt;code&gt;build.conf&lt;/code&gt;:&lt;br /&gt;&lt;pre class="src src-conf-unix"&gt;&lt;span style="color: #228b22;"&gt;isEmpty( QTI_ROOT )&lt;/span&gt; {&lt;br /&gt;  message( &lt;span style="color: #8b2252;"&gt;"each file including this config needs to set QTI_ROOT to the dir containing this file!"&lt;/span&gt; )&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #b22222;"&gt;##########################################################&lt;/span&gt;&lt;span style="color: #b22222;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;##     &lt;/span&gt;&lt;span style="color: #b22222;"&gt;System specific configuration&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;##########################################################&lt;/span&gt;&lt;span style="color: #b22222;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;Global include path which is always added at the end of the INCLUDEPATH&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #a0522d;"&gt;SYS_INCLUDEPATH&lt;/span&gt; = /opt/local/include&lt;br /&gt;&lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;Global lib path and libs which is ls always added at the end of LIBS&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #a0522d;"&gt;SYS_LIBS&lt;/span&gt; = -L/opt/local/lib&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #b22222;"&gt;##########################################################&lt;/span&gt;&lt;span style="color: #b22222;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;## &lt;/span&gt;&lt;span style="color: #b22222;"&gt;zlib (http://www.zlib.net/)&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;##########################################################&lt;/span&gt;&lt;span style="color: #b22222;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;include path. leave it blank to use SYS_INCLUDE&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #a0522d;"&gt;ZLIB_INCLUDEPATH&lt;/span&gt; = $$QTI_ROOT/3rdparty/zlib/&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #b22222;"&gt;##########################################################&lt;/span&gt;&lt;span style="color: #b22222;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;## &lt;/span&gt;&lt;span style="color: #b22222;"&gt;muParser (http://muparser.sourceforge.net/)&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;##########################################################&lt;/span&gt;&lt;span style="color: #b22222;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;include path. leave it blank to use SYS_INCLUDE&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #a0522d;"&gt;MUPARSER_INCLUDEPATH&lt;/span&gt; = /usr/include/muParser/&lt;br /&gt;&lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;link statically against a copy in 3rdparty/&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #a0522d;"&gt;MUPARSER_LIBS&lt;/span&gt; = /usr/lib/libmuparser.so&lt;br /&gt;&lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;or dynamically against a system-wide installation&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;MUPARSER_LIBS = -lmuparser&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #b22222;"&gt;##########################################################&lt;/span&gt;&lt;span style="color: #b22222;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;## &lt;/span&gt;&lt;span style="color: #b22222;"&gt;GNU Sientific Library (http://www.gnu.org/software/gsl/)&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;##########################################################&lt;/span&gt;&lt;span style="color: #b22222;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;include path. leave it blank to use SYS_INCLUDE&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;GSL_INCLUDEPATH = $$QTI_ROOT/3rdparty/gsl/include&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;link statically against a copy in 3rdparty/&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;GSL_LIBS = $$QTI_ROOT/3rdparty/gsl/lib/libgsl.a \&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;#            &lt;/span&gt;&lt;span style="color: #b22222;"&gt;$$QTI_ROOT/3rdparty/gsl/lib/libgslcblas.a&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;or dynamically against a system-wide installation&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #a0522d;"&gt;GSL_LIBS&lt;/span&gt; = -lgsl -lgslcblas&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #b22222;"&gt;##########################################################&lt;/span&gt;&lt;span style="color: #b22222;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;## &lt;/span&gt;&lt;span style="color: #b22222;"&gt;QWT - use local copy till upstream catches up&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;http://qwt.sourceforge.net/index.html&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;##########################################################&lt;/span&gt;&lt;span style="color: #b22222;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;include path.&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #a0522d;"&gt;QWT_INCLUDEPATH&lt;/span&gt; = $$QTI_ROOT/3rdparty/qwt/src&lt;br /&gt;&lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;link locally against a copy in 3rdparty/&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #a0522d;"&gt;QWT_LIBS&lt;/span&gt; = $$QTI_ROOT/3rdparty/qwt/lib/libqwt.a&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #b22222;"&gt;##########################################################&lt;/span&gt;&lt;span style="color: #b22222;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;## &lt;/span&gt;&lt;span style="color: #b22222;"&gt;QwtPlot3D - use local copy till upstream catches up&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;http://qwtplot3d.sourceforge.net/&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;##########################################################&lt;/span&gt;&lt;span style="color: #b22222;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;include path.&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #a0522d;"&gt;QWT3D_INCLUDEPATH&lt;/span&gt; = $$QTI_ROOT/3rdparty/qwtplot3d/include&lt;br /&gt;&lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;link locally against a copy in 3rdparty/&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #a0522d;"&gt;win32:QWT3D_LIBS&lt;/span&gt; = $$QTI_ROOT/3rdparty/qwtplot3d/lib/qwtplot3d.dll&lt;br /&gt;&lt;span style="color: #a0522d;"&gt;unix:QWT3D_LIBS&lt;/span&gt; = $$QTI_ROOT/3rdparty/qwtplot3d/lib/libqwtplot3d.a&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #b22222;"&gt;##########################################################&lt;/span&gt;&lt;span style="color: #b22222;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;## &lt;/span&gt;&lt;span style="color: #b22222;"&gt;libpng - optional. you don't have to set these variables&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;##########################################################&lt;/span&gt;&lt;span style="color: #b22222;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;include path. leave it blank to use SYS_INCLUDE&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;LIBPNG_INCLUDEPATH = $$QTI_ROOT/3rdparty/libpng/&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;link statically against a copy in 3rdparty/&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;LIBPNG_LIBS = $$QTI_ROOT/3rdparty/libpng/libpng.a&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;or dynamically against a system-wide installation&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #a0522d;"&gt;LIBPNG_LIBS&lt;/span&gt; = -lpng&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #b22222;"&gt;##########################################################&lt;/span&gt;&lt;span style="color: #b22222;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;## &lt;/span&gt;&lt;span style="color: #b22222;"&gt;QTeXEngine - optional. you don't have to set these variables&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;http://soft.proindependent.com/qtexengine/&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;##########################################################&lt;/span&gt;&lt;span style="color: #b22222;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;include path.&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #a0522d;"&gt;TEX_ENGINE_INCLUDEPATH&lt;/span&gt; = $$QTI_ROOT/3rdparty/QTeXEngine/src&lt;br /&gt;&lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;link locally against a copy in 3rdparty/&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #a0522d;"&gt;TEX_ENGINE_LIBS&lt;/span&gt; = $$QTI_ROOT/3rdparty/QTeXEngine/libQTeXEngine.a&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #b22222;"&gt;##########################################################&lt;/span&gt;&lt;span style="color: #b22222;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;## &lt;/span&gt;&lt;span style="color: #b22222;"&gt;ALGLIB (2.6) - optional. you don't have to set these variables&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;http://www.alglib.net/&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;##########################################################&lt;/span&gt;&lt;span style="color: #b22222;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;include path.&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #a0522d;"&gt;ALGLIB_INCLUDEPATH&lt;/span&gt; = $$QTI_ROOT/3rdparty/alglib/src&lt;br /&gt;&lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;link locally against a copy in 3rdparty/&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #a0522d;"&gt;ALGLIB_LIBS&lt;/span&gt; = $$QTI_ROOT/3rdparty/alglib/out/libalglib.a&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #b22222;"&gt;##########################################################&lt;/span&gt;&lt;span style="color: #b22222;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;## &lt;/span&gt;&lt;span style="color: #b22222;"&gt;TAMUANOVA - optional. you don't have to set these variables&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;http://www.stat.tamu.edu/~aredd/tamuanova/&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;##########################################################&lt;/span&gt;&lt;span style="color: #b22222;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;include path.&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #a0522d;"&gt;TAMUANOVA_INCLUDEPATH&lt;/span&gt; = $$QTI_ROOT/3rdparty/tamu_anova/&lt;br /&gt;&lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;link locally against a copy in 3rdparty/&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #a0522d;"&gt;TAMUANOVA_LIBS&lt;/span&gt; = $$QTI_ROOT/3rdparty/tamu_anova/libtamuanova.a&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #b22222;"&gt;##########################################################&lt;/span&gt;&lt;span style="color: #b22222;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;## &lt;/span&gt;&lt;span style="color: #b22222;"&gt;python - only used if python is needed&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;##########################################################&lt;/span&gt;&lt;span style="color: #b22222;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;the python interpreter to use&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;(unix only, windows will use what ever is configured to execute .py files!)&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #a0522d;"&gt;PYTHON&lt;/span&gt; = python&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #b22222;"&gt;##########################################################&lt;/span&gt;&lt;span style="color: #b22222;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;## &lt;/span&gt;&lt;span style="color: #b22222;"&gt;Qt tools - allows to use specific versions&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;##########################################################&lt;/span&gt;&lt;span style="color: #b22222;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #a0522d;"&gt;LUPDATE&lt;/span&gt; = lupdate&lt;br /&gt;&lt;span style="color: #a0522d;"&gt;LRELEASE&lt;/span&gt; = lrelease&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #b22222;"&gt;############################################################&lt;/span&gt;&lt;span style="color: #b22222;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;##  &lt;/span&gt;&lt;span style="color: #b22222;"&gt;Target specific configuration: configure Qtiplot itself&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #b22222;"&gt;############################################################&lt;/span&gt;&lt;span style="color: #b22222;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #228b22;"&gt;contains( TARGET, qtiplot )&lt;/span&gt; {&lt;br /&gt;  &lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;building without muParser doesn't work yet&lt;br /&gt;&lt;/span&gt;  &lt;span style="color: #a0522d;"&gt;SCRIPTING_LANGS +&lt;/span&gt;= muParser&lt;br /&gt;  &lt;span style="color: #a0522d;"&gt;SCRIPTING_LANGS +&lt;/span&gt;= Python&lt;br /&gt;&lt;br /&gt;  &lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;a console displaying output of scripts; particularly useful on Windows&lt;br /&gt;&lt;/span&gt;  &lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;where running QtiPlot from a terminal is inconvenient&lt;br /&gt;&lt;/span&gt;  &lt;span style="color: #a0522d;"&gt;DEFINES         +&lt;/span&gt;= SCRIPTING_CONSOLE&lt;br /&gt;&lt;br /&gt;  &lt;span style="color: #b22222;"&gt;#&lt;/span&gt;&lt;span style="color: #b22222;"&gt;DEFINES         += QTIPLOT_DEMO&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;Uncomment the following line if you want to perform a custom installation using the *.path variables defined in ./qtiplot.pro.&lt;br /&gt;&lt;/span&gt;  &lt;span style="color: #b22222;"&gt;#&lt;/span&gt;&lt;span style="color: #b22222;"&gt;CONFIG          += CustomInstall&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;Uncomment the following line if you want to build QtiPlot as a browser plugin (not working on Internet Explorer).&lt;br /&gt;&lt;/span&gt;  &lt;span style="color: #b22222;"&gt;#&lt;/span&gt;&lt;span style="color: #b22222;"&gt;CONFIG          += BrowserPlugin&lt;br /&gt;&lt;/span&gt;  &lt;br /&gt;  &lt;span style="color: #a0522d;"&gt;CONFIG          +&lt;/span&gt;= release&lt;br /&gt;  &lt;span style="color: #b22222;"&gt;#&lt;/span&gt;&lt;span style="color: #b22222;"&gt;CONFIG          += debug&lt;br /&gt;&lt;/span&gt;  &lt;br /&gt;  &lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;Uncomment the following line if you want to link statically against Qt.&lt;br /&gt;&lt;/span&gt;  &lt;span style="color: #b22222;"&gt;#&lt;/span&gt;&lt;span style="color: #b22222;"&gt;CONFIG           += StaticBuild&lt;br /&gt;&lt;/span&gt;  &lt;span style="color: #b22222;"&gt;#&lt;/span&gt;&lt;span style="color: #b22222;"&gt;win32: CONFIG   += console&lt;br /&gt;&lt;/span&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Non abbiamo ancora finito, dobbiamo fare un'ultima cosa. Modifichiamo il file &lt;code&gt;qtiplot.pro&lt;/code&gt; che si trova nella cartella principale del codice sorgente. Questo contiene il nome di quali cartelle contengono del codice che dovrà essere compilato. Togliamo dall'elenco &lt;code&gt;fitPlugins&lt;/code&gt; e &lt;code&gt;manual&lt;/code&gt; (eventualmente potranno essere compilati successivamente), quindi il file apparirà più o meno così:&lt;br /&gt;&lt;pre class="src src-fundamental"&gt;TEMPLATE = subdirs&lt;br /&gt;&lt;br /&gt;SUBDIRS = 3rdparty/qwt \&lt;br /&gt;        3rdparty/qwtplot3d \&lt;br /&gt;        qtiplot&lt;br /&gt;&lt;/pre&gt;A questo punto dovremmo essere in grado, finalmente di compilare QtiPlot. Come spiegato nel file &lt;code&gt;README.html&lt;/code&gt; i comandi da dare sono&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;qmake&lt;br /&gt;make&lt;br /&gt;&lt;/pre&gt;Per rendere più veloce la compilazione, chi ha un processore &lt;a href="http://it.wikipedia.org/wiki/Multi_core"&gt;multicore&lt;/a&gt; può passare a &lt;code&gt;make&lt;/code&gt; l'opzione &lt;code&gt;-j &lt;i&gt;n&lt;/i&gt;&lt;/code&gt;, dove &lt;code&gt;&lt;i&gt;n&lt;/i&gt;&lt;/code&gt; è il numero di core del processore (o meglio di job simultanei che può gestire, però per semplificare il discorso parliamo di core). Quindi chi, per esempio, ha un processore con quattro core potrà usare per compilare QtiPlot il comando&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;make -j 4&lt;br /&gt;&lt;/pre&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-pPGTL7k0Q-U/TWBhHOi8O6I/AAAAAAAAAIY/_3PrvL00h5o/s1600/qtiplot-0.9.8.4.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="189" src="http://3.bp.blogspot.com/-pPGTL7k0Q-U/TWBhHOi8O6I/AAAAAAAAAIY/_3PrvL00h5o/s320/qtiplot-0.9.8.4.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;Se la compilazione va a buon fine (come al solito possiamo controllarlo con &lt;code&gt;echo $?&lt;/code&gt;) possiamo direttamente avviare QtiPlot, per vedere se funziona, inserendo il percorso relativo dell'eseguibile appena generato:&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;qtiplot/qtiplot&lt;br /&gt;&lt;/pre&gt;Infine si può, se lo si desidera, installare il programma con&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;sudo make install&lt;br /&gt;&lt;/pre&gt;oppure utilizzando &lt;a href="http://wiki.ubuntu-it.org/Programmazione/Checkinstall"&gt;&lt;code&gt;checkinstall&lt;/code&gt;&lt;/a&gt;:&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;sudo checkinstall&lt;br /&gt;&lt;/pre&gt;che crea un semplice pacchetto .deb (il risultato, però, non è "professionale").&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-104337334766449757?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/104337334766449757/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2011/02/compilare-qtiplot-0984.html#comment-form' title='10 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/104337334766449757'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/104337334766449757'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2011/02/compilare-qtiplot-0984.html' title='Compilare QtiPlot 0.9.8.4'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-pPGTL7k0Q-U/TWBhHOi8O6I/AAAAAAAAAIY/_3PrvL00h5o/s72-c/qtiplot-0.9.8.4.png' height='72' width='72'/><thr:total>10</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-897003074456427346</id><published>2011-02-19T16:26:00.003+01:00</published><updated>2011-02-19T16:39:48.325+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='emacs'/><title type='text'>Emacs: aprire il file manager nella cartelle del buffer corrente</title><content type='html'>In Emacs è presente una modalità chiamata &lt;a href="http://www.gnu.org/software/emacs/manual/html_node/emacs/Dired.html#Dired"&gt;Dired&lt;/a&gt; che funge da &lt;a href="http://it.wikipedia.org/wiki/File_manager"&gt;file manager&lt;/a&gt;. Tuttavia in qualche caso si potrebbe voler aprire il file manager dell'&lt;a href="http://it.wikipedia.org/wiki/Desktop_environment"&gt;ambiente desktop&lt;/a&gt; in uso (o comunque un file manager esterno) direttamente nella cartella in cui si trova il file attualmente modificato (o meglio, il buffer corrispondente). Per fare ciò si può aggiungere il seguente codice all'interno del proprio &lt;a href="http://www.gnu.org/software/emacs/manual/html_node/emacs/Init-File.html#Init-File"&gt;file di inizializzazione&lt;/a&gt; (a meno che questa funzione non sia già presente in Emacs e io non sia in grado di trovarla):&lt;br /&gt;&lt;pre class="src src-emacs-lisp"&gt;(&lt;span style="color: #a020f0;"&gt;defun&lt;/span&gt; &lt;span style="color: blue;"&gt;open-buffer-path&lt;/span&gt; ()&lt;br /&gt;  &lt;span style="color: #8b2252;"&gt;"Run Nautilus on the directory of the current buffer."&lt;/span&gt;&lt;br /&gt;  (interactive)&lt;br /&gt;  (shell-command (concat &lt;span style="color: #8b2252;"&gt;"nautilus "&lt;/span&gt; default-directory)))&lt;br /&gt;&lt;/pre&gt;Questo codice definisce la funzione &lt;code&gt;open-buffer-path&lt;/code&gt; che aprirà il file manager Nautilus (il predefinito di GNOME) nella cartella predefinita (che normalmente corrisponde alla cartella in cui si trova il file in uso, oppure alla propria home se il buffer aperto non corrisponde a un file). Se si vuole usare un file manager diverso basta sostituire il comando che compare come argomento di &lt;code&gt;concat&lt;/code&gt; (e magari anche il &lt;code&gt;Nautilus&lt;/code&gt; che compare nel rigo di descrizione della funzione).&lt;br /&gt;&lt;br /&gt;Se lo si desidera si può associare una combinazione di tasti a questa funzione aggiungendo al proprio file di inizializzazione:&lt;br /&gt;&lt;pre class="src src-emacs-lisp"&gt;(global-set-key (kbd &lt;span style="color: #8b2252;"&gt;"&amp;lt;M-f3&amp;gt;"&lt;/span&gt;) 'open-buffer-path)&lt;br /&gt;&lt;/pre&gt;Con questo codice verrà associata la combinazione &lt;code&gt;M-f3&lt;/code&gt; alla funzione &lt;code&gt;open-buffer-path&lt;/code&gt;, se si vuole usare una combinazione diversa basta sostituire l'occorrenza di &lt;code&gt;M-f3&lt;/code&gt; nel codice precedente.&lt;br /&gt;&lt;br /&gt;Questo post prende spunto da &lt;a href="http://zhangda.wordpress.com/2010/02/03/open-the-path-of-the-current-buffer-within-emacs/"&gt;http://zhangda.wordpress.com/2010/02/03/open-the-path-of-the-current-buffer-within-emacs/&lt;/a&gt; in cui è definita una funzione per aprire il file manager Explorer in Windows. A questo proposito trovate un codice alternativo qui: &lt;a href="http://www.factsandpeople.com/facts-mainmenu-5/2-editor-emacs/80-switching-between-windows-explorer-and-emacs"&gt;http://www.factsandpeople.com/facts-mainmenu-5/2-editor-emacs/80-switching-between-windows-explorer-and-emacs&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-897003074456427346?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/897003074456427346/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2011/02/emacs-apri-il-file-manager-nella.html#comment-form' title='6 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/897003074456427346'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/897003074456427346'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2011/02/emacs-apri-il-file-manager-nella.html' title='Emacs: aprire il file manager nella cartelle del buffer corrente'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-683324418632608671</id><published>2011-01-15T14:45:00.010+01:00</published><updated>2011-09-17T16:12:44.848+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='info'/><category scheme='http://www.blogger.com/atom/ns#' term='problema'/><category scheme='http://www.blogger.com/atom/ns#' term='amministrazione'/><category scheme='http://www.blogger.com/atom/ns#' term='terminale'/><title type='text'>info: Impossibile trovare il nodo «Top». [Risolto]</title><content type='html'>Non so bene per quale motivo (ma ho l'impressione che sia colpa di un aggiornamento di Ubuntu) non sono più in grado di usare &lt;code&gt;info&lt;/code&gt;. Come spiegai in &lt;a href="http://elubuntu.blogspot.com/2009/02/il-terminale.html"&gt;uno dei primi post&lt;/a&gt; di questo blog, per consultare da terminale i manuali (se presenti) dei comandi si può usare &lt;code&gt;man&lt;/code&gt;:&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;man &lt;i&gt;nomecomando&lt;/i&gt;&lt;br /&gt;&lt;/pre&gt;In aggiunta a &lt;code&gt;man&lt;/code&gt;, molti programmi (soprattutto del progetto &lt;a href="http://www.gnu.org/software/software.html"&gt;GNU&lt;/a&gt;) forniscono una guida (spesso più completa del manuale consultabile con &lt;code&gt;man&lt;/code&gt;) che può essere letta con &lt;code&gt;info&lt;/code&gt;: &lt;br /&gt;&lt;pre class="src src-shell-script"&gt;info &lt;i&gt;nomecomando&lt;/i&gt;&lt;br /&gt;&lt;/pre&gt;In questi giorni, dando il comando (per esempio) &lt;br /&gt;&lt;pre class="src src-shell-script"&gt;info coreutils&lt;br /&gt;&lt;/pre&gt;(per leggere la guida delle principale utilità di sistema, chiamate appunto &lt;a href="http://www.gnu.org/software/coreutils/"&gt;coreutils&lt;/a&gt;) ricevo dal terminale questa risposta:&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;info: Impossibile trovare il nodo «Top».&lt;br /&gt;&lt;/pre&gt;Il messaggio in lingua inglese è il seguente:&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;info: Cannot find node &lt;span style="color: magenta;"&gt;`Top'.&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;Il problema è che per qualche motivo si è corrotto il file &lt;code&gt;/usr/share/info/dir&lt;/code&gt; che contiene (o, nel mio caso, dovrebbe contenere) l'elenco dei manuali che possono essere consultati con &lt;code&gt;info&lt;/code&gt;. Il mio file &lt;code&gt;/usr/share/info/dir&lt;/code&gt; conteneva solo questo:&lt;br /&gt;&lt;pre class="example"&gt;Questo è il file .../info/dir, che contiene il&lt;br /&gt;nodo più in alto della gerarchia di Info, chiamata (dir)Top.&lt;br /&gt;La prima volta che invochi il programma Info esso parte da questo nodo.&lt;br /&gt;^_&lt;br /&gt;File: dir, Node: Top\tQuesto è il nodo più alto dell'albero INFO&lt;br /&gt;&lt;br /&gt;Questo (il nodo principale) fornisce un menù che contiene le voci principali.&lt;br /&gt;Digitando "q" esce, digitando "?" si produce un elenco di tutti i comandi Info,&lt;br /&gt;"d" ritorna alla presente schermata, "h" fornisce informazioni ai nuovi utenti,&lt;br /&gt;"mEmacs&amp;lt;return&amp;gt;" visualizza il manuale di Emacs, ecc.&lt;br /&gt;All'interno di Emacs, puoi cliccare con il pulsante sinistro del mouse su una voce di menù&lt;br /&gt;o su un riferimento incrociato per selezionarlo.&lt;br /&gt;&lt;br /&gt;* Menu:&lt;br /&gt;&lt;/pre&gt;Come vedete, manca l'elenco dei manuali disponibili, che invece dovrebbe essere presente dopo la riga &lt;code&gt;* Menu:&lt;/code&gt;.&lt;br /&gt;&lt;br /&gt;Per risolvere il problema si può cancellare il file incriminato e rigenerarlo con il comando da terminale &lt;code&gt;install-info&lt;/code&gt; (in Debian, Ubuntu e derivate bisogna richiamare il comando con &lt;code&gt;ginstall-info&lt;/code&gt;). &lt;code&gt;install-info&lt;/code&gt; accetta come primo argomento il file (in genere questi file hanno estensione &lt;code&gt;.info&lt;/code&gt; e potrebbero essere compressi con gzip) che contiene il manuale che si vuole aggiungere all'elenco (questi file in genere si trovano nella cartella &lt;code&gt;/usr/share/info/&lt;/code&gt; e sue sottocartelle), come secondo argomento il file di elenco (cioè &lt;code&gt;/usr/share/info/dir&lt;/code&gt;). Queste due operazioni possono essere automatizzate con i due seguenti comandi (richiedono i diritti di amministratore perché si modificherà un file di sistema):&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;sudo mv /usr/share/info/dir ~/dir&lt;br /&gt;&lt;span style="color: #a020f0;"&gt;for&lt;/span&gt; file&lt;span style="color: #a020f0;"&gt; in&lt;/span&gt; /usr/share/info/*.{gz,info} /usr/share/info/*/*.{gz,info}; &lt;span style="color: #a020f0;"&gt;do&lt;/span&gt; sudo install-info &lt;span style="color: #8b2252;"&gt;"$file"&lt;/span&gt; /usr/share/info/dir; &lt;span style="color: #a020f0;"&gt;done&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;Se usate sistemi, come Debian o Ubuntu, che richiedono &lt;code&gt;ginstall-info&lt;/code&gt; al posto di &lt;code&gt;install-info&lt;/code&gt;, il secondo dei comandi precedenti va cambiato in&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;&lt;span style="color: #a020f0;"&gt;for&lt;/span&gt; file&lt;span style="color: #a020f0;"&gt; in&lt;/span&gt; /usr/share/info/*.{gz,info} /usr/share/info/*/*.{gz,info}; &lt;span style="color: #a020f0;"&gt;do&lt;/span&gt; sudo ginstall-info &lt;span style="color: #8b2252;"&gt;"$file"&lt;/span&gt; /usr/share/info/dir ; &lt;span style="color: #a020f0;"&gt;done&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;Breve spiegazione dei comandi consigliati: il primo comando (&lt;code&gt;mv&lt;/code&gt;) serve per spostare il file nella propria home, conservando una copia di sicurezza (anche se il file è corrotto non fa male creare una copia, dopo aver risolto il problema la copia può essere tranquillamente cancellata); il secondo esegue un &lt;a href="http://www.pluto.it/files/ildp/guide/abs/loops.html#FORLOOPREF1"&gt;ciclo for&lt;/a&gt; su tutti i file con estensioni &lt;code&gt;.gz&lt;/code&gt; o &lt;code&gt;.info&lt;/code&gt; presenti nella cartella &lt;code&gt;/usr/share/info&lt;/code&gt; sue sottocartelle. Se in questo modo non dovessero essere inclusi alcuni file di manuali, potete farlo manualmente tramite &lt;code&gt;install-info&lt;/code&gt; (o &lt;code&gt;ginstall-info&lt;/code&gt;) con la sintassi esposta precedentemente.&lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;Aggiornamento importante&lt;/b&gt;&lt;/i&gt;: dopo il commento di Zio LoneWolf (che ringrazio) mi sono accorto che la questione era più complicata di quanto mi sembrasse inizialmente. Per risolvere il problema non è affatto sufficiente usare i comandi presentati in precedenza perché &lt;a href="https://bugs.launchpad.net/ubuntu/+source/texinfo/+bug/707931"&gt;pare&lt;/a&gt; che sia presente un bug nella traduzione italiana di &lt;a href="http://www.gnu.org/software/texinfo/"&gt;Texinfo&lt;/a&gt;. Si può aggirare (e questa volta per davvero) il problema impostando nella shell la lingua inglese e poi utilizzando nuovamente i comandi precedenti:&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;&lt;span style="color: sienna;"&gt;LANG&lt;/span&gt;=en_US.UTF-8&lt;br /&gt;&lt;span style="color: #a020f0;"&gt;for&lt;/span&gt; file&lt;span style="color: #a020f0;"&gt; in&lt;/span&gt; /usr/share/info/*.{gz,info} /usr/share/info/*/*.{gz,info}; &lt;span style="color: #a020f0;"&gt;do&lt;/span&gt; sudo install-info &lt;span style="color: #8b2252;"&gt;"$file"&lt;/span&gt; /usr/share/info/dir; &lt;span style="color: #a020f0;"&gt;done&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;oppure&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;&lt;span style="color: sienna;"&gt;LANG&lt;/span&gt;=en_US.UTF-8&lt;br /&gt;&lt;span style="color: #a020f0;"&gt;for&lt;/span&gt; file&lt;span style="color: #a020f0;"&gt; in&lt;/span&gt; /usr/share/info/*.{gz,info} /usr/share/info/*/*.{gz,info}; &lt;span style="color: #a020f0;"&gt;do&lt;/span&gt; sudo ginstall-info &lt;span style="color: #8b2252;"&gt;"$file"&lt;/span&gt; /usr/share/info/dir; &lt;span style="color: #a020f0;"&gt;done&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;L'aggiornamento del file &lt;code&gt;/usr/share/info/dir&lt;/code&gt; può anche essere fatto con il comando &lt;code&gt;update-info-dir&lt;/code&gt; (dato come al solito con privilegi di amministratore). Si può fare in modo che questo script utilizzi sempre la lingua inglese senza doverla impostare manualmente ogni volta. Aprite con il vostro &lt;a href="http://wiki.ubuntu-it.org/Ufficio/EditorDiTesto"&gt;editor di testo&lt;/a&gt; preferito (e con i diritti di amministratore) lo script &lt;code&gt;/usr/sbin/update-info-dir&lt;/code&gt;. Per esempio con gedit si userà:&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;gksudo gedit /usr/sbin/update-info-dir&lt;br /&gt;&lt;/pre&gt;A questo punto inserite la stringa&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;&lt;span style="color: #7a378b;"&gt;unset&lt;/span&gt; LANG &lt;span style="color: firebrick;"&gt;# &lt;/span&gt;&lt;span style="color: firebrick;"&gt;https://bugs.launchpad.net/ubuntu/+source/texinfo/+bug/707931&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;(nel commento c'è un riferimento alla segnalazione del bug su Launchpad) per esempio dopo il rigo&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;&lt;span style="color: #7a378b;"&gt;unset&lt;/span&gt; LANGUAGE&lt;br /&gt;&lt;/pre&gt;Dopo di ciò sarà possibile aggiornare il file &lt;code&gt;/usr/share/info/dir &lt;/code&gt;semplicemente con il comando&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;sudo update-info-dir&lt;br /&gt;&lt;/pre&gt;&lt;i&gt;&lt;b&gt;Altro aggiornamento&lt;/i&gt;&lt;/b&gt;: &lt;a href="http://www.blogger.com/profile/06898268911730429117"&gt;Giovanni&lt;/a&gt; segnala nei commenti che ha realizzato uno script per risolvere automaticamente il problema. Trovate lo script e le istruzioni per l'uso sul sito sito: &lt;a href="http://www.ubaweb.it/miniguide/info_non_va.php"&gt;http://www.ubaweb.it/miniguide/info_non_va.php&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-683324418632608671?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/683324418632608671/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2011/01/info-impossibile-trovare-il-nodo-top.html#comment-form' title='7 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/683324418632608671'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/683324418632608671'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2011/01/info-impossibile-trovare-il-nodo-top.html' title='info: Impossibile trovare il nodo «Top». [Risolto]'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-4143311853677018801</id><published>2010-11-05T20:49:00.010+01:00</published><updated>2011-02-14T16:07:19.249+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='pdf'/><category scheme='http://www.blogger.com/atom/ns#' term='script nautilus'/><category scheme='http://www.blogger.com/atom/ns#' term='diff'/><title type='text'>Confrontare le differenze fra due documenti PDF (2)</title><content type='html'>Qualche giorno fa &lt;a href="http://elubuntu.blogspot.com/2010/10/confrontare-le-differenze-fra-due.html"&gt;ho illustrato&lt;/a&gt; un semplice script bash che permette di eseguire un confronto elementare fra due documenti PDF per cercarne le differenze. Tuttavia, come ho spiegato, questo script ha numerosi difetti perché cerca essenzialmente differenze nel testo dei due documenti (se è in grado di estrarre correttamente il testo da essi). Esiste però un programma a interfaccia grafica che permette di eseguire un confronto più efficace: &lt;a href="http://www.qtrac.eu/diffpdf.html"&gt;DiffPDF&lt;/a&gt;. Questo pacchetto è fornito dalle principali distribuzioni GNU/Linux; in Debian, Ubuntu &amp;amp; Co. bisogna installare il pacchetto &lt;code&gt;&lt;a href="apt:diffpdf"&gt;diffpdf&lt;/a&gt;&lt;/code&gt; con il Gestore pacchetti Synaptic oppure da terminale con il solito comando:&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;sudo apt-get install diffpdf&lt;br /&gt;&lt;/pre&gt;Per le altre distribuzioni fare riferimento al proprio gestore pacchetti.&lt;br /&gt;&lt;br /&gt;Il programma può essere avviato dal lanciatore (in Ubuntu: &lt;b&gt;Applicazioni&lt;/b&gt; → &lt;b&gt;Accessori&lt;/b&gt; → &lt;b&gt;DiffPDF&lt;/b&gt;) oppure da terminale con il comando&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;diffpdf&lt;br /&gt;&lt;/pre&gt;È possibile passare come argomenti i percorsi dei documenti che si vogliono confrontare:&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;diffpdf /percorso/del/file1.pdf /percorso/del/file2.pdf&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_YBnmJTR73Is/TNRoJ_slOdI/AAAAAAAAAH4/qoYSXl2vt6I/s1600/Schermata-DiffPDF.png" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5536164362871716306" src="http://3.bp.blogspot.com/_YBnmJTR73Is/TNRoJ_slOdI/AAAAAAAAAH4/qoYSXl2vt6I/s320/Schermata-DiffPDF.png" style="cursor: pointer; display: block; height: 183px; margin: 0px auto 10px; text-align: center; width: 320px;" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Normalmente DiffPDF mette a confronto i testi dei documenti, ma, come potete vedere dallo &lt;a href="http://elubuntu.blogspot.com/2009/06/catturare-screenshot.html"&gt;screenshot&lt;/a&gt; seguente, è possibile anche effettuare un confronto visuale fra due documenti, per poter cercare differenze fra le immagini. Per fare ciò bisogna selezionare &lt;span style="font-weight: bold;"&gt;Appearance&lt;/span&gt; nel menu a tendina &lt;span style="font-weight: bold;"&gt;Comparison Mode&lt;/span&gt; in alto a destra e rieseguire il confronto con il pulsante &lt;span style="font-weight: bold;"&gt;Compare&lt;/span&gt; situato più in basso, sempre sul pannello di destra. Questa modalità potrebbe fornire dei falsi positivi (come succede nell'immagine proposta) perché non viene più confrontato solo del testo, ma comunque i risultati sono in genere molto buoni.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_YBnmJTR73Is/TN2R0ndLaMI/AAAAAAAAAIA/knMcDdgb6BE/s1600/Schermata-DiffPDF-2.png" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5538743449866168514" src="http://1.bp.blogspot.com/_YBnmJTR73Is/TN2R0ndLaMI/AAAAAAAAAIA/knMcDdgb6BE/s320/Schermata-DiffPDF-2.png" style="cursor: pointer; display: block; height: 183px; margin: 0px auto 10px; text-align: center; width: 320px;" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Anche qui propongo uno &lt;a href="http://wiki.ubuntu-it.org/AmbienteGrafico/Gnome/ScriptNautilus"&gt;Script per Nautilus&lt;/a&gt; che permette di avviare DiffPDF con pochi clic selezionando i file che si desidera confrontare:&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;&lt;span style="color: #b22222;"&gt;#&lt;/span&gt;&lt;span style="color: #b22222;"&gt;!/bin/&lt;/span&gt;&lt;span style="color: #a020f0;"&gt;bash&lt;/span&gt;&lt;span style="color: #b22222;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #a0522d;"&gt;titolo&lt;/span&gt;=&lt;span style="color: #8b2252;"&gt;"Confronta PDF"&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #a020f0;"&gt;function&lt;/span&gt; controlla() {&lt;br /&gt;    &lt;span style="color: #a0522d;"&gt;estensione&lt;/span&gt;=$(&lt;span style="color: #ff00ff;"&gt;echo&lt;/span&gt; &lt;span style="color: #8b2252;"&gt;"$1"&lt;/span&gt; | cut -d. --complement -f1)&lt;br /&gt;    &lt;span style="color: #a020f0;"&gt;case&lt;/span&gt; $&lt;span style="color: #a0522d;"&gt;estensione&lt;/span&gt;&lt;span style="color: #a020f0;"&gt; in&lt;/span&gt;&lt;br /&gt;        [pP][dD][fF])&lt;br /&gt;            ;;&lt;br /&gt;        *)&lt;br /&gt;            zenity --error --title=&lt;span style="color: #8b2252;"&gt;"$titolo"&lt;/span&gt; --text=&lt;span style="color: #8b2252;"&gt;"Devi selezionare due file con estensione \".pdf\"."&lt;/span&gt;&lt;br /&gt;            &lt;span style="color: #a020f0;"&gt;exit&lt;/span&gt; 1&lt;br /&gt;    &lt;span style="color: #a020f0;"&gt;esac&lt;/span&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #a020f0;"&gt;if&lt;/span&gt; [ $# -ne 2 ]; &lt;span style="color: #a020f0;"&gt;then&lt;/span&gt;&lt;br /&gt;    zenity --error --title=&lt;span style="color: #8b2252;"&gt;"$titolo"&lt;/span&gt; --text=&lt;span style="color: #8b2252;"&gt;"Devi selezionare due file PDF alla volta."&lt;/span&gt;&lt;br /&gt;    &lt;span style="color: #a020f0;"&gt;exit&lt;/span&gt; 1&lt;br /&gt;&lt;span style="color: #a020f0;"&gt;fi&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #a0522d;"&gt;pdf1&lt;/span&gt;=&lt;span style="color: #8b2252;"&gt;"$1"&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #a0522d;"&gt;pdf2&lt;/span&gt;=&lt;span style="color: #8b2252;"&gt;"$2"&lt;/span&gt;&lt;br /&gt;controlla &lt;span style="color: #8b2252;"&gt;"$pdf1"&lt;/span&gt; &amp;amp;&amp;amp; controlla &lt;span style="color: #8b2252;"&gt;"$pdf2"&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #a020f0;"&gt;if&lt;/span&gt; [ $? -eq 0 ]; &lt;span style="color: #a020f0;"&gt;then&lt;/span&gt;&lt;br /&gt;    diffpdf &lt;span style="color: #8b2252;"&gt;"$pdf1"&lt;/span&gt; &lt;span style="color: #8b2252;"&gt;"$pdf2"&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #a020f0;"&gt;else&lt;/span&gt; &lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;non dovrebbe arrivare mai qui, metto per sicurezza&lt;br /&gt;&lt;/span&gt;    zenity --error  --title=&lt;span style="color: #8b2252;"&gt;"$titolo"&lt;/span&gt; --text=&lt;span style="color: #8b2252;"&gt;"Si &amp;#232; verificato un errore."&lt;/span&gt;&lt;br /&gt;    &lt;span style="color: #a020f0;"&gt;exit&lt;/span&gt; 1&lt;br /&gt;&lt;span style="color: #a020f0;"&gt;fi&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #a020f0;"&gt;exit&lt;/span&gt; 0&lt;br /&gt;&lt;/pre&gt;Per utilizzare questo script aprite un file vuoto con un editor di testo, copiate lo script nell'editor e salvatelo nella cartella &lt;code&gt;~/.gnome2/nautilus-scripts&lt;/code&gt; (ricordo che la tilde &lt;code&gt;~&lt;/code&gt; è un'abbreviazione della cartella home dell'utente corrente) chiamandolo, per esempio, "&lt;code&gt;Confronta PDF&lt;/code&gt;". &lt;a href="http://elubuntu.blogspot.com/2009/09/rendere-eseguibile-un-file.html"&gt;Rendete eseguibile&lt;/a&gt; lo script e così potrete selezionare due file PDF da confrontare che si trovano nella stessa cartella e, facendo clic con il tasto destro, scegliete &lt;span style="font-weight: bold;"&gt;Script&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;Confronta PDF&lt;/span&gt; (o il nome che avete dato allo script).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-4143311853677018801?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/4143311853677018801/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2010/11/confrontare-le-differenze-fra-due.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/4143311853677018801'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/4143311853677018801'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2010/11/confrontare-le-differenze-fra-due.html' title='Confrontare le differenze fra due documenti PDF (2)'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_YBnmJTR73Is/TNRoJ_slOdI/AAAAAAAAAH4/qoYSXl2vt6I/s72-c/Schermata-DiffPDF.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-8110798366551997764</id><published>2010-10-26T16:38:00.008+02:00</published><updated>2011-02-14T16:21:15.728+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='pdf'/><category scheme='http://www.blogger.com/atom/ns#' term='script nautilus'/><category scheme='http://www.blogger.com/atom/ns#' term='diff'/><category scheme='http://www.blogger.com/atom/ns#' term='terminale'/><category scheme='http://www.blogger.com/atom/ns#' term='script'/><title type='text'>Confrontare le differenze fra due documenti PDF</title><content type='html'>&lt;span style="font-style:italic;"&gt;&lt;span style="font-weight:bold;"&gt;Nota&lt;/span&gt;: &lt;a href="http://elubuntu.blogspot.com/2010/11/confrontare-le-differenze-fra-due.html"&gt;qui&lt;/a&gt; suggerisco il programma a interfaccia grafica DiffPDF che permette di effettuare un confronto più efficace fra due documenti PDF.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Un semplice metodo per confrontare due documenti in formato PDF è sfruttare l'accoppiata &lt;code&gt;&lt;a href="http://en.wikipedia.org/wiki/Pdftotext"&gt;pdftotext&lt;/a&gt;&lt;/code&gt; (per convertire i PDF in testo puro) + &lt;code&gt;&lt;a href="http://en.wikipedia.org/wiki/Diff"&gt;diff&lt;/a&gt;&lt;/code&gt; (per controllare le differenze). Mi ero stancato di eseguire tutti i soliti comandi allora ho scritto questo script fresco fresco:&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;&lt;span style="color: #b22222;"&gt;#&lt;/span&gt;&lt;span style="color: #b22222;"&gt;!/bin/&lt;/span&gt;&lt;span style="color: #a020f0;"&gt;bash&lt;/span&gt;&lt;span style="color: #b22222;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #a020f0;"&gt;function&lt;/span&gt; converti() {&lt;br /&gt;    &lt;span style="color: #a0522d;"&gt;txt&lt;/span&gt;=$(&lt;span style="color: #ff00ff;"&gt;eval&lt;/span&gt; &lt;span style="color: #8b2252;"&gt;"expr \$"&lt;/span&gt;$&lt;span style="color: #a0522d;"&gt;1&lt;/span&gt;&lt;span style="color: #8b2252;"&gt;" "&lt;/span&gt;)&lt;br /&gt;    &lt;span style="color: #a0522d;"&gt;pdf&lt;/span&gt;=$(&lt;span style="color: #ff00ff;"&gt;eval&lt;/span&gt; &lt;span style="color: #8b2252;"&gt;"expr \$"&lt;/span&gt;$&lt;span style="color: #a0522d;"&gt;2&lt;/span&gt;&lt;span style="color: #8b2252;"&gt;" "&lt;/span&gt;)&lt;br /&gt;    &lt;span style="color: #a0522d;"&gt;scelta&lt;/span&gt;=&lt;span style="color: #8b2252;"&gt;""&lt;/span&gt;&lt;br /&gt;    &lt;span style="color: #a020f0;"&gt;while&lt;/span&gt; [ -f &lt;span style="color: #8b2252;"&gt;"$txt"&lt;/span&gt; ]; &lt;span style="color: #a020f0;"&gt;do&lt;/span&gt;&lt;br /&gt;        &lt;span style="color: #7a378b;"&gt;read&lt;/span&gt; -p &lt;span style="color: #8b2252;"&gt;"Il file $txt esiste gi&amp;#224;, sovrascriverlo? [s/n]: "&lt;/span&gt; scelta&lt;br /&gt;        &lt;span style="color: #a020f0;"&gt;case&lt;/span&gt; &lt;span style="color: #8b2252;"&gt;"$scelta"&lt;/span&gt;&lt;span style="color: #a020f0;"&gt; in&lt;/span&gt;&lt;br /&gt;            s|S|y|Y)&lt;br /&gt;                &lt;span style="color: #a020f0;"&gt;break&lt;/span&gt; 2&lt;br /&gt;                ;;&lt;br /&gt;            n|N)&lt;br /&gt;                &lt;span style="color: #7a378b;"&gt;read&lt;/span&gt; -p &lt;span style="color: #8b2252;"&gt;"Specifica un file di output differente: "&lt;/span&gt; txt&lt;br /&gt;                ;;&lt;br /&gt;        &lt;span style="color: #a020f0;"&gt;esac&lt;/span&gt;&lt;br /&gt;    &lt;span style="color: #a020f0;"&gt;done&lt;/span&gt;&lt;br /&gt;    &lt;span style="color: #a020f0;"&gt;if&lt;/span&gt; ! pdftotext &lt;span style="color: #8b2252;"&gt;"$pdf"&lt;/span&gt; &lt;span style="color: #8b2252;"&gt;"$txt"&lt;/span&gt;; &lt;span style="color: #a020f0;"&gt;then&lt;/span&gt;&lt;br /&gt;        &lt;span style="color: #a020f0;"&gt;exit&lt;/span&gt; 1&lt;br /&gt;    &lt;span style="color: #a020f0;"&gt;fi&lt;/span&gt;&lt;br /&gt;    &lt;span style="color: #7a378b;"&gt;eval&lt;/span&gt; &lt;span style="color: #8b2252;"&gt;"$1=$txt"&lt;/span&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #a020f0;"&gt;if&lt;/span&gt; [ $# -ne 2 ]; &lt;span style="color: #a020f0;"&gt;then&lt;/span&gt;&lt;br /&gt;    &lt;span style="color: #7a378b;"&gt;echo&lt;/span&gt; &lt;span style="color: #8b2252;"&gt;"Uso: $0 PDF1 PDF2"&lt;/span&gt;&lt;br /&gt;    &lt;span style="color: #a020f0;"&gt;exit&lt;/span&gt; 1&lt;br /&gt;&lt;span style="color: #a020f0;"&gt;fi&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #a0522d;"&gt;pdf1&lt;/span&gt;=$&lt;span style="color: #a0522d;"&gt;1&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #a0522d;"&gt;pdf2&lt;/span&gt;=$&lt;span style="color: #a0522d;"&gt;2&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #a0522d;"&gt;txt1&lt;/span&gt;=$(&lt;span style="color: #ff00ff;"&gt;dirname&lt;/span&gt; &lt;span style="color: #8b2252;"&gt;"$pdf1"&lt;/span&gt;)/$(&lt;span style="color: #ff00ff;"&gt;basename&lt;/span&gt; &lt;span style="color: #8b2252;"&gt;"$pdf1"&lt;/span&gt; .pdf).txt&lt;br /&gt;&lt;span style="color: #a0522d;"&gt;txt2&lt;/span&gt;=$(&lt;span style="color: #ff00ff;"&gt;dirname&lt;/span&gt; &lt;span style="color: #8b2252;"&gt;"$pdf1"&lt;/span&gt;)/$(&lt;span style="color: #ff00ff;"&gt;basename&lt;/span&gt; &lt;span style="color: #8b2252;"&gt;"$pdf2"&lt;/span&gt; .pdf).txt&lt;br /&gt;converti txt1 pdf1 &amp;amp;&amp;amp; converti txt2 pdf2&lt;br /&gt;&lt;span style="color: #a020f0;"&gt;if&lt;/span&gt; [ $? -eq 0 ]; &lt;span style="color: #a020f0;"&gt;then&lt;/span&gt;&lt;br /&gt;    diff -u &lt;span style="color: #8b2252;"&gt;"$txt1"&lt;/span&gt; &lt;span style="color: #8b2252;"&gt;"$txt2"&lt;/span&gt; | less&lt;br /&gt;&lt;span style="color: #a020f0;"&gt;fi&lt;/span&gt;&lt;br /&gt;rm -f &lt;span style="color: #8b2252;"&gt;"$txt1"&lt;/span&gt; &lt;span style="color: #8b2252;"&gt;"$txt2"&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #a020f0;"&gt;exit&lt;/span&gt; 0&lt;br /&gt;&lt;/pre&gt;Per utilizzarlo basta copiare lo script in un file con un &lt;a href="http://wiki.ubuntu-it.org/Ufficio/EditorDiTesto"&gt;editor di testo&lt;/a&gt; a piacere, salvare il file chiamandolo, per esempio, &lt;code&gt;pdf-diff&lt;/code&gt;, &lt;a href="http://elubuntu.blogspot.com/2009/09/rendere-eseguibile-un-file.html"&gt;renderlo eseguibile&lt;/a&gt; e posizionarlo nella cartella &lt;code&gt;~/bin&lt;/code&gt; (ricordo che la tilde &lt;code&gt;~&lt;/code&gt; è un'abbreviazione della cartella home dell'utente corrente), creandola se eventualmente non esiste. Date nel terminale il comando&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;&lt;span style="color: #7a378b;"&gt;.&lt;/span&gt; ~/.profile&lt;br /&gt;&lt;/pre&gt;(per i curiosi serve a caricare il file &lt;code&gt;~/.profile&lt;/code&gt; che aggiunge la cartella &lt;code&gt;$HOME/bin&lt;/code&gt; alla variabile d'ambiente &lt;code&gt;&lt;a href="http://www.pluto.it/files/ildp/guide/abs/variables2.html#PATHREF"&gt;$PATH&lt;/a&gt;&lt;/code&gt;), dopo di ciò dovrebbe essere sufficiente dare nel terminale il comando&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;pdf-diff /percorso/del/primo/file /percorso/del/secondo/file&lt;br /&gt;&lt;/pre&gt;(o il nome che avete dato allo script).&lt;br /&gt;&lt;br /&gt;Non sarà perfetto, ha tutti i limiti che si riscontrano nel passaggio da un PDF a un file di testo puro (per esempio se cambia un'immagine non se ne accorge e la buona riuscita del confronto dipende da quanto bene &lt;code&gt;pdftotext&lt;/code&gt; riesce a leggere i documenti) ma è abbastanza veloce e ho trovato questo sistema spesso molto utile.&lt;br /&gt;&lt;br /&gt;Ho scritto anche il corrispondente &lt;a href="http://wiki.ubuntu-it.org/AmbienteGrafico/Gnome/ScriptNautilus"&gt;script Nautilus&lt;/a&gt; (utilizza &lt;code&gt;zenity&lt;/code&gt;):&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;&lt;span style="color: #b22222;"&gt;#&lt;/span&gt;&lt;span style="color: #b22222;"&gt;!/bin/&lt;/span&gt;&lt;span style="color: #a020f0;"&gt;bash&lt;/span&gt;&lt;span style="color: #b22222;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #a0522d;"&gt;titolo&lt;/span&gt;=&lt;span style="color: #8b2252;"&gt;"Confronto PDF"&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #a020f0;"&gt;function&lt;/span&gt; converti() {&lt;br /&gt;    &lt;span style="color: #a0522d;"&gt;txt&lt;/span&gt;=$(&lt;span style="color: #ff00ff;"&gt;eval&lt;/span&gt; &lt;span style="color: #8b2252;"&gt;"expr \$"&lt;/span&gt;$&lt;span style="color: #a0522d;"&gt;1&lt;/span&gt;&lt;span style="color: #8b2252;"&gt;" "&lt;/span&gt;)&lt;br /&gt;    &lt;span style="color: #a0522d;"&gt;pdf&lt;/span&gt;=$(&lt;span style="color: #ff00ff;"&gt;eval&lt;/span&gt; &lt;span style="color: #8b2252;"&gt;"expr \$"&lt;/span&gt;$&lt;span style="color: #a0522d;"&gt;2&lt;/span&gt;&lt;span style="color: #8b2252;"&gt;" "&lt;/span&gt;)&lt;br /&gt;    &lt;span style="color: #a020f0;"&gt;while&lt;/span&gt; [ -f &lt;span style="color: #8b2252;"&gt;"$txt"&lt;/span&gt; ]; &lt;span style="color: #a020f0;"&gt;do&lt;/span&gt;&lt;br /&gt;        &lt;span style="color: #a020f0;"&gt;if&lt;/span&gt; ! zenity --question --title=&lt;span style="color: #8b2252;"&gt;"$titolo"&lt;/span&gt; --text=&lt;span style="color: #8b2252;"&gt;"Il file $txt esiste gi&amp;#224;, sovrascriverlo?"&lt;/span&gt;; &lt;span style="color: #a020f0;"&gt;then&lt;/span&gt;&lt;br /&gt;            &lt;span style="color: #a0522d;"&gt;txt&lt;/span&gt;=$(&lt;span style="color: #ff00ff;"&gt;zenity&lt;/span&gt; --entry  --title=&lt;span style="color: #8b2252;"&gt;"$titolo"&lt;/span&gt; --text=&lt;span style="color: #8b2252;"&gt;"Specifica un file di output differente: "&lt;/span&gt;)&lt;br /&gt;        &lt;span style="color: #a020f0;"&gt;else&lt;/span&gt;&lt;br /&gt;            &lt;span style="color: #a020f0;"&gt;break&lt;/span&gt; 2&lt;br /&gt;        &lt;span style="color: #a020f0;"&gt;fi&lt;/span&gt;&lt;br /&gt;    &lt;span style="color: #a020f0;"&gt;done&lt;/span&gt;&lt;br /&gt;    pdftotext &lt;span style="color: #8b2252;"&gt;"$pdf"&lt;/span&gt; &lt;span style="color: #8b2252;"&gt;"$txt"&lt;/span&gt;&lt;br /&gt;    &lt;span style="color: #a020f0;"&gt;case&lt;/span&gt; $?&lt;span style="color: #a020f0;"&gt; in&lt;/span&gt;&lt;br /&gt;        0)&lt;br /&gt;            ;;&lt;br /&gt;        1)&lt;br /&gt;            zenity --error  --title=&lt;span style="color: #8b2252;"&gt;"$titolo"&lt;/span&gt; --text=&lt;span style="color: #8b2252;"&gt;"Si &amp;#232; verificato un errore nell'apertura di $pdf."&lt;/span&gt;&lt;br /&gt;            &lt;span style="color: #a020f0;"&gt;exit&lt;/span&gt; 1&lt;br /&gt;            ;;&lt;br /&gt;        2)&lt;br /&gt;            zenity --error  --title=&lt;span style="color: #8b2252;"&gt;"$titolo"&lt;/span&gt; --text=&lt;span style="color: #8b2252;"&gt;"Si &amp;#232; verificato un errore nell'apertura di $txt."&lt;/span&gt;&lt;br /&gt;            &lt;span style="color: #a020f0;"&gt;exit&lt;/span&gt; 1&lt;br /&gt;            ;;&lt;br /&gt;        3)&lt;br /&gt;            zenity --error  --title=&lt;span style="color: #8b2252;"&gt;"$titolo"&lt;/span&gt; --text=&lt;span style="color: #8b2252;"&gt;"Si &amp;#232; verificato un errore collegato ai permessi di $pdf."&lt;/span&gt;&lt;br /&gt;            &lt;span style="color: #a020f0;"&gt;exit&lt;/span&gt; 1&lt;br /&gt;            ;;&lt;br /&gt;        *)&lt;br /&gt;            zenity --error  --title=&lt;span style="color: #8b2252;"&gt;"$titolo"&lt;/span&gt; --text=&lt;span style="color: #8b2252;"&gt;"Si &amp;#232; verificato un errore!"&lt;/span&gt;&lt;br /&gt;            &lt;span style="color: #a020f0;"&gt;exit&lt;/span&gt; 1&lt;br /&gt;    &lt;span style="color: #a020f0;"&gt;esac&lt;/span&gt;&lt;br /&gt;    &lt;span style="color: #7a378b;"&gt;eval&lt;/span&gt; &lt;span style="color: #8b2252;"&gt;"$1=$txt"&lt;/span&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #a020f0;"&gt;if&lt;/span&gt; [ $# -ne 2 ]; &lt;span style="color: #a020f0;"&gt;then&lt;/span&gt;&lt;br /&gt;    zenity --error --title=&lt;span style="color: #8b2252;"&gt;"$titolo"&lt;/span&gt; --text=&lt;span style="color: #8b2252;"&gt;"Devi selezionare due file alla volta"&lt;/span&gt;&lt;br /&gt;    &lt;span style="color: #a020f0;"&gt;exit&lt;/span&gt; 1&lt;br /&gt;&lt;span style="color: #a020f0;"&gt;fi&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #a0522d;"&gt;pdf1&lt;/span&gt;=$&lt;span style="color: #a0522d;"&gt;1&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #a0522d;"&gt;pdf2&lt;/span&gt;=$&lt;span style="color: #a0522d;"&gt;2&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #a0522d;"&gt;txt1&lt;/span&gt;=$(&lt;span style="color: #ff00ff;"&gt;dirname&lt;/span&gt; &lt;span style="color: #8b2252;"&gt;"$pdf1"&lt;/span&gt;)/$(&lt;span style="color: #ff00ff;"&gt;basename&lt;/span&gt; &lt;span style="color: #8b2252;"&gt;"$pdf1"&lt;/span&gt; .pdf).txt&lt;br /&gt;&lt;span style="color: #a0522d;"&gt;txt2&lt;/span&gt;=$(&lt;span style="color: #ff00ff;"&gt;dirname&lt;/span&gt; &lt;span style="color: #8b2252;"&gt;"$pdf1"&lt;/span&gt;)/$(&lt;span style="color: #ff00ff;"&gt;basename&lt;/span&gt; &lt;span style="color: #8b2252;"&gt;"$pdf2"&lt;/span&gt; .pdf).txt&lt;br /&gt;converti txt1 pdf1 &amp;amp;&amp;amp; converti txt2 pdf2&lt;br /&gt;&lt;span style="color: #a020f0;"&gt;if&lt;/span&gt; [ $? -eq 0 ]; &lt;span style="color: #a020f0;"&gt;then&lt;/span&gt;&lt;br /&gt;    diff -u &lt;span style="color: #8b2252;"&gt;"$txt1"&lt;/span&gt; &lt;span style="color: #8b2252;"&gt;"$txt2"&lt;/span&gt; | zenity --text-info  --title=&lt;span style="color: #8b2252;"&gt;"$titolo"&lt;/span&gt; --filename=/dev/stdin&lt;br /&gt;    rm -f &lt;span style="color: #8b2252;"&gt;"$txt1"&lt;/span&gt; &lt;span style="color: #8b2252;"&gt;"$txt2"&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #a020f0;"&gt;else&lt;/span&gt; &lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;non dovrebbe arrivare mai qui, metto per sicurezza&lt;br /&gt;&lt;/span&gt;    zenity --error  --title=&lt;span style="color: #8b2252;"&gt;"$titolo"&lt;/span&gt; --text=&lt;span style="color: #8b2252;"&gt;"Si &amp;#232; verificato un errore!"&lt;/span&gt;&lt;br /&gt;    &lt;span style="color: #a020f0;"&gt;exit&lt;/span&gt; 1&lt;br /&gt;&lt;span style="color: #a020f0;"&gt;fi&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #a020f0;"&gt;exit&lt;/span&gt; 0&lt;br /&gt;&lt;/pre&gt;Per utilizzare questo secondo script aprite un file vuoto con un editor di testo, copiate lo script nell'editor e salvatelo nella cartella &lt;code&gt;~/.gnome2/nautilus-scripts&lt;/code&gt; chiamandolo, per esempio, "&lt;code&gt;Confronta PDF&lt;/code&gt;". Rendete quindi eseguibile lo script. Così potrete selezionare due file PDF da confrontare e, facendo clic con il tasto destro, scegliete &lt;span style="font-weight: bold;"&gt;Script&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;Confronta PDF&lt;/span&gt; (o il nome che avete dato allo script).&lt;br /&gt;&lt;br /&gt;Dal punto di vista tecnico, gli script presentano un aspetto un po' particolare: la funzione &lt;code&gt;converti&lt;/code&gt; (che serve per convertire il pdf in testo ed eseguire i controlli del caso) presenta una sorta di passaggio di variabile per riferimento e non per valore. Il "trucco" sta nel passare alla funzione non il valore della variabile ma il suo nome (chi ha familiarità con altri linguaggi di programmazione potrebbe trovare ciò naturale). I dettagli possono essere visti qui: &lt;a href="http://www.pluto.it/files/ildp/guide/abs/functions.html#DEREFERENCECL"&gt;http://www.pluto.it/files/ildp/guide/abs/functions.html#DEREFERENCECL&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-8110798366551997764?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/8110798366551997764/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2010/10/confrontare-le-differenze-fra-due.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/8110798366551997764'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/8110798366551997764'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2010/10/confrontare-le-differenze-fra-due.html' title='Confrontare le differenze fra due documenti PDF'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-216061695279045846</id><published>2010-10-23T17:28:00.005+02:00</published><updated>2010-10-25T00:19:56.308+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='problema'/><category scheme='http://www.blogger.com/atom/ns#' term='internet'/><category scheme='http://www.blogger.com/atom/ns#' term='gmail'/><title type='text'>Importare in Gmail la posta inviata di un altro account</title><content type='html'>Questa volta parlerò di un problema non legato al sistema operativo GNU/Linux, però è un problema che mi ha tenuto impegnato per un po' e voglio spiegare il &lt;a href="http://it.wiktionary.org/wiki/barbatrucco"&gt;barbatrucco&lt;/a&gt; con cui l'ho risolto: importare in Gmail la posta inviata di un altro account.&lt;br /&gt;&lt;br /&gt;In Gmail è possibile &lt;a href="http://mail.google.com/support/bin/static.py?page=guide.cs&amp;guide=25413"&gt;importare&lt;/a&gt; le email ricevute da un qualsiasi altro account di posta elettronico nel proprio account su Gmail. Se si vuole è possibile anche continuare a scaricare automaticamente la posta da altri account (al massimo 5) con la funzione chiamata &lt;a href="http://mail.google.com/support/bin/answer.py?hl=it&amp;answer=21288"&gt;Mail Fetcher&lt;/a&gt;. Purtroppo né l'importazione manuale della posta né Mail Fetcher importano anche le email inviate dagli altri account, come spiegato nella sezione di &lt;a href="http://mail.google.com/support/bin/static.py?page=guide.cs&amp;guide=25413&amp;topic=25417#168356"&gt;Risoluzione dei problemi&lt;/a&gt; della guida. È vero che non è possibile farlo automaticamente, ma con qualche giro sono riuscito nel mio intento. Per fare ciò ho dovuto dare un'occhiata all'organizzazione della posta su Gmail. Il barbatrucco funziona pienamente se l'account da cui si vogliono importare le email verrà aggiunto ai &lt;a href="http://mail.google.com/support/bin/answer.py?hl=it&amp;ctx=mail&amp;answer=22370"&gt;mittenti personalizzati&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Le mail (che normalmente sono raccolte per &lt;a href="http://mail.google.com/support/bin/answer.py?hl=it&amp;answer=5900"&gt;conversazioni&lt;/a&gt;, se non vi piace questa visualizzazione potete disattivarla da &lt;span style="font-weight:bold;"&gt;Impostazioni&lt;/span&gt; e nella scheda &lt;span style="font-weight:bold;"&gt;Generali&lt;/span&gt; selezionate &lt;span style="font-weight:bold;"&gt;Visualizzazione per conversazione disattivata&lt;/span&gt;) non sono suddivise in cartelle ma hanno delle "&lt;a href="http://mail.google.com/support/bin/answer.py?hl=it&amp;answer=118708"&gt;etichette&lt;/a&gt;" che vengono loro attribuite. L'uso è praticamente lo stesso, la differenza è che a una mail possono essere attribuite più etichette, è come se si trovasse in più cartelle contemporaneamente. Tutte le mail si trovano nello spazio chiamato &lt;span style="font-weight:bold;"&gt;Tutti i messaggi&lt;/span&gt; (il collegamento sta nella barra sulla sinistra, se non la vede premete &lt;span style="font-weight:bold;"&gt;Altre&lt;/span&gt;), non vengono però visualizzate le email eliminate (le quali hanno l'etichetta &lt;span style="font-weight:bold;"&gt;Cestino&lt;/span&gt;) e quelle segnate come spam (che hanno l'etichetta &lt;span style="font-weight:bold;"&gt;Spam&lt;/span&gt;). (quasi) Tutti i "gruppi" che vediamo sulla sinistra non fanno altro che raccogliere le email secondo le etichette che le sono state attribuite. Così, le email posizionate in &lt;span style="font-weight:bold;"&gt;&lt;a href="http://mail.google.com/support/bin/answer.py?hl=it&amp;answer=18522"&gt;Posta in arrivo&lt;/a&gt;&lt;/span&gt; sono semplicemente delle mail che hanno l'etichetta &lt;span style="font-weight:bold;"&gt;Posta in arrivo&lt;/span&gt; (per quanto possa sembrare strano, una email inviata può trovarsi in &lt;span style="font-weight:bold;"&gt;Posta in arrivo&lt;/span&gt;: basta che abbia la corrispondente etichetta), le eventuali email presenti in &lt;span style="font-weight:bold;"&gt;Personale&lt;/span&gt;, &lt;span style="font-weight:bold;"&gt;Lavoro&lt;/span&gt;, ecc. hanno le rispettive etichette e, come detto, una mail può anche avere più etichette contemporaneamente (e quindi comparirà in tutti i rispettivi "gruppi"). Invece le mail presenti in &lt;span style="font-weight:bold;"&gt;Posta inviata&lt;/span&gt; hanno come caratteristica di avere come mittente l'account in uso o uno dei mittenti personalizzati.&lt;br /&gt;&lt;br /&gt;Vi starete chiedendo: cosa c'entra tutto questo discorso con l'importazione delle email inviate? Calma, arriviamo subito alla soluzione del problema facendo un breve riepilogo di quello che abbiamo appreso. Sappiamo che Gmail può importare dagli altri account la posta arrivata, ma non quella inviata, allora potremmo pensare di spostare nel precedente account le email inviate nella cartella di Posta in arrivo (in genere questa è una operazione possibile, naturalmente non posso spiegare i dettagli perché variano da provider a provider), ma questa operazione crea l'inconveniente che importando la posta nell'account Gmail le email inviate avranno l'etichetta &lt;span style="font-weight:bold;"&gt;Posta in arrivo&lt;/span&gt; e quindi si troveranno in quel gruppo (a meno che nella fase di importazione non si sia selezionata l'opzione &lt;span style="font-weight:bold;"&gt;Archivia messaggi in arrivo (Ignora Posta in arrivo)&lt;/span&gt;). Sappiamo però anche che per togliere una mail dalla &lt;span style="font-weight:bold;"&gt;Posta in arrivo&lt;/span&gt; basta rimuovere la corrispondente etichetta, niente di più semplice! Ho già specificato che il barbatrucco funziona se l'indirizzo da cui stiamo importando la posta è uno dei mittenti personalizzati, quindi le email si troveranno già automaticamente in &lt;span style="font-weight:bold;"&gt;Posta inviata&lt;/span&gt;, altrimenti non compariranno in questa "cartella" ma solo in &lt;span style="font-weight:bold;"&gt;Tutti i messaggi&lt;/span&gt; (e se questa eventualità non è un problema allora non diventa neanche necessario che l'account da cui si importa sia fra i mittenti personalizzati).&lt;br /&gt;&lt;br /&gt;Per non dover rimuovere manualmente le etichette a ciascun messaggio inviato consiglio di suddividere l'operazione di importazione in due punti:&lt;br /&gt;1) importare normalmente nell'account Gmail tutta la posta arrivata al precedente account;&lt;br /&gt;2) dopo aver concluso questa operazione, spostare (nel vecchio account) le email inviate nella cartella ed eseguire nuovamente lo scaricamento in Gmail (tranquilli, le email già importate non saranno scaricate nuovamente) selezionando l'opzione &lt;span style="font-weight:bold;"&gt;Archivia messaggi in arrivo (Ignora Posta in arrivo)&lt;/span&gt;. In questo modo, come spiegato già abbastanza bene dal nome dell'opzione, le nuove email che saranno scaricate (nella speranza che ci siano solo le email inviate e non compaia qualche nuova mail :-D ) verranno &lt;a href="http://mail.google.com/support/bin/answer.py?hl=it&amp;answer=6576"&gt;archiviate&lt;/a&gt;, cioè non sarà aggiunta l'etichetta &lt;span style="font-weight:bold;"&gt;Posta in arrivo&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Nel vecchio account da cui avete importato le email potete ora fare quello che vi pare: riportare le email inviate nella cartella di posta inviata, cancellarle, ecc. Ovviamente è possibile selezionare l'opzione &lt;span style="font-weight:bold;"&gt;Archivia messaggi in arrivo (Ignora Posta in arrivo)&lt;/span&gt; già nell'importazione di tutte le mail ricevute, in questo caso non si rende neanche necessaria una doppia importazione, si possono importare tutte insieme email ricevute e inviate (naturalmente dopo aver spostato queste ultime nella cartella di posta ricevuta). Se si utilizza Mail Fetcher, dopo aver effettuato l'importazione dei messaggi inviati potreste voler togliere l'opzione &lt;span style="font-weight:bold;"&gt;Archivia messaggi in arrivo&lt;/span&gt;: ricordatevi di farlo, altrimenti le nuove mail ricevute sul vecchio account non passeranno da Posta in arrivo!&lt;br /&gt;&lt;br /&gt;Questo è il barbatrucco che ho escogitato io, non escludo che esista qualche metodo più semplice, in questo caso sarei felice di conoscerlo! :-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-216061695279045846?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/216061695279045846/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2010/10/importare-in-gmail-la-posta-inviata-di.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/216061695279045846'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/216061695279045846'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2010/10/importare-in-gmail-la-posta-inviata-di.html' title='Importare in Gmail la posta inviata di un altro account'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-6047932392719182084</id><published>2010-10-22T23:54:00.002+02:00</published><updated>2011-04-24T20:47:59.567+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='latex'/><category scheme='http://www.blogger.com/atom/ns#' term='auctex'/><category scheme='http://www.blogger.com/atom/ns#' term='emacs'/><title type='text'>Opzioni utili per comporre documenti LaTeX in GNU Emacs + AUCTeX</title><content type='html'>&lt;a href="http://www.gnu.org/software/emacs/"&gt;GNU Emacs&lt;/a&gt;, come ho già avuto modo di dire, è un potente editor di testo che permette di fare di tutto e di più. Esistono numerose funzioni che permettono di facilitare la scrittura di codici in numerosi linguaggi di programmazioni, compreso, ovviamente &lt;a href="http://it.wikipedia.org/wiki/LaTeX"&gt;LaTeX&lt;/a&gt; (anche se in questo caso il nome "linguaggio di programmazione" non è del tutto adeguato). Uno dei tanti motivi per cui Emacs è molto apprezzato è la sua possibilità di personalizzazione ed espansione: esistono centinaia di estensioni che aumentano notevolmente le potenzialità di questo editor di testo oltre le funzioni fornite nativamente. Esiste (ovviamente) una estensione anche per LaTeX: &lt;a href="http://www.gnu.org/software/auctex/"&gt;AUCTeX&lt;/a&gt; (ma è utile anche per ConTeXt, docTeX, Texinfo e TeX puro: molte delle impostazioni che vedremo varranno per tutti questi linguaggi, anche se mi riferirò generalmente solo a LaTeX).&lt;br /&gt;&lt;br /&gt;Non è mia intenzione spiegare qui come si installa Emacs né tanto meno AUCTeX (anche perché questi pacchetti sono forniti dalla maggior parte delle distribuzioni GNU/Linux, l'installazione è quindi molto semplice se si conosce il funzionamento del proprio gestore pacchetti), ma piuttosto illustrare quali sono le opzioni di AUCTeX (e qualcuna propria di Emacs) che ho trovato personalmente utili. Darò per scontato che si abbia un minimo di familiarità con Emacs, con la notazione delle scorciatoie e dei comandi e anche con AUCTeX (qualche volta però ricorderò come eseguire alcune operazioni). Prima di iniziare ricordo che si può consultare il manuale (in inglese) di AUCTeX all'indirizzo &lt;a href="http://www.gnu.org/software/auctex/manual/auctex.html"&gt;http://www.gnu.org/software/auctex/manual/auctex.html&lt;/a&gt; oppure direttamente dentro Emacs con &lt;code&gt;C-h i d m AUCTeX RET&lt;/code&gt;. Per la modifica di buona parte delle opzioni seguenti AUCTeX dovrà essere già caricato. Non sono un grande esperto di Emacs, potrei dire a volte delle sciocchezze, spero che mi perdoniate e sono graditi consigli (a ogni modo vi posso assicurare che seguendo questa guida non vi scoppierà il pc :-D).&lt;br /&gt;&lt;br /&gt;In AUCTeX è possibile eseguire varie operazioni come compilazione, esecuzione di &lt;code&gt;bibtex&lt;/code&gt;, esecuzione di &lt;code&gt;makeindex&lt;/code&gt;, cancellazione dei file temporanei, ecc... usando &lt;code&gt;C-c C-c&lt;/code&gt; (seguito dal comando che si desidera usare). La cancellazione dei file temporanei viene eseguita usando l'elenco delle estensioni dei file salvato nella variabile &lt;code&gt;LaTeX-clean-intermediate-suffixes&lt;/code&gt;. Per modificare questa variabile (come tutte le variabili di Emacs, naturalmente sostituendo il nome dove opportuno) si può usare il comando (ricordo che i comandi possono essere inseriti con &lt;code&gt;M-x&lt;/code&gt;, dove &lt;code&gt;M&lt;/code&gt; è il cosiddetto tasto Meta e può essere ottenuto con l'ALT, oppure, se non è presente tale tasto, con ESC (rilasciare ESC dopo averlo premuto)):&lt;br /&gt;&lt;pre class="src src-emacs-lisp"&gt;customize-variable RET LaTeX-clean-intermediate-suffixes RET&lt;br /&gt;&lt;/pre&gt;Per aggiungere nuove estensioni selezionare &lt;code&gt;INS&lt;/code&gt; e inserire di fianco a &lt;code&gt;Regexp:&lt;/code&gt; l'&lt;a href="http://it.wikipedia.org/wiki/Espressione_regolare"&gt;espressione regolare&lt;/a&gt; (per maggiori informazioni sulle espressioni regolari in Emacs si può consultare il manuale di Elisp in Emacs oppure vedere &lt;a href="http://www.gnu.org/software/emacs/manual/html_node/elisp/Regular-Expressions.html#Regular-Expressions"&gt;qui&lt;/a&gt;) corrispondente all'estensione che si vuole aggiungere. Per esempio io ho aggiunto le estensioni &lt;code&gt;.tex~&lt;/code&gt; (i file di backup creati da Emacs) e &lt;code&gt;.run.xml&lt;/code&gt; (file usati per creare la bibliografia con il pacchetto &lt;code&gt;biblatex&lt;/code&gt;) con le seguenti espressioni regolari:&lt;br /&gt;&lt;pre class="example"&gt;\.tex~&lt;br /&gt;\.run\.xml&lt;br /&gt;&lt;/pre&gt;Per rendere definitiva la modifica selezionare &lt;code&gt;Save for future sessions&lt;/code&gt; (bisognerà fare lo stesso ogni volta che si usa &lt;code&gt;customize-variable&lt;/code&gt;).&lt;br /&gt;&lt;br /&gt;Emacs si preoccupa anche di &lt;a href="http://it.wikipedia.org/wiki/Indentazione"&gt;indentare&lt;/a&gt; correttamente il codice, compresi i vari ambienti. Si può in particolare impostare l'editor in modo che quando viene premuto il tasto di Invio (o, nella notazione di Emacs, &lt;code&gt;RET&lt;/code&gt;) il cursore si porti, nel rigo successivo, nella giusta posizione richiesta da una corretta indentazione. Per fare ciò bisogna modificare la variabile &lt;code&gt;TeX-newline-function&lt;/code&gt; con il comando:&lt;br /&gt;&lt;pre class="src src-emacs-lisp"&gt;customize-variable RET TeX-newline-function RET&lt;br /&gt;&lt;/pre&gt;Selezionare &lt;code&gt;Value Menu&lt;/code&gt; e scegliere &lt;code&gt;newline-and-indent&lt;/code&gt;. È possibile anche modificare il comportamento di Emacs nell'indentazione all'interno di determinati ambienti modificando la variabile &lt;code&gt;LaTeX-indent-environment-list&lt;/code&gt;, sempre con il comando:&lt;br /&gt;&lt;pre class="src src-emacs-lisp"&gt;customize-variable RET LaTeX-indent-environment-list RET&lt;br /&gt;&lt;/pre&gt;Io, per esempio, ho aggiunto l'ambiente &lt;code&gt;lstlisting&lt;/code&gt; per fare in modo che Emacs non aggiungesse automaticamente il rientro per il testo inserito in questo ambiente. Per fare ciò ho selezionato &lt;code&gt;INS&lt;/code&gt;, scritto &lt;code&gt;lstlisting&lt;/code&gt; di fianco a &lt;code&gt;Environment:&lt;/code&gt; e dopo aver messo la spunta a &lt;code&gt;Function:&lt;/code&gt; ho scritto nel relativo spazio &lt;code&gt;current-indentation&lt;/code&gt; (proprio come risulta di default per l'ambiente &lt;code&gt;verbatim&lt;/code&gt;). &lt;br /&gt;&lt;br /&gt;Emacs permette anche l'&lt;a href="http://it.wikipedia.org/wiki/Syntax_highlighting"&gt;evidenziazione della sintassi&lt;/a&gt; di LaTeX, ma in alcuni (rari) casi può andare in difficoltà. Per esempio ho avuto problemi con il già citato ambiente &lt;code&gt;lstlisting&lt;/code&gt; in quanto AUCTeX 11.86 non conosce bene il suo funzionamento (per esempio l'inserimento del simbolo del dollaro &lt;code&gt;$&lt;/code&gt; rovina tutta l'evidenziazione del documento). Per fortuna è possibile spiegargli che lo deve trattare allo stesso modo dell'ambiente &lt;code&gt;verbatim&lt;/code&gt; (in pratica tutto ciò che si trova all'interno di questo ambiente non viene interpretato da Emacs per quanto riguarda l'evidenziazione della sintassi) modificando la variabile &lt;code&gt;LaTeX-verbatim-environments&lt;/code&gt;:&lt;br /&gt;&lt;pre class="src src-emacs-lisp"&gt;customize-variable RET LaTeX-verbatim-environments RET&lt;br /&gt;&lt;/pre&gt;aggiungete &lt;code&gt;lstlisting&lt;/code&gt; (penso che ormai avrete capito come funziona questo tipo di interfaccia di modifica delle variabili) e il gioco è fatto.&lt;br /&gt;&lt;br /&gt;In maniera predefinita Emacs compila i documenti in formato &lt;a href="http://it.wikipedia.org/wiki/DVI_%28TeX%29"&gt;DVI&lt;/a&gt;. Se invece si vuole impostare in maniera predefinita il formato &lt;a href="http://it.wikipedia.org/wiki/Portable_Document_Format"&gt;PDF&lt;/a&gt; bisogna modificare il valore della variabile &lt;code&gt;TeX-PDF-mode&lt;/code&gt;:&lt;br /&gt;&lt;pre class="src src-emacs-lisp"&gt;customize-variable RET TeX-PDF-mode RET&lt;br /&gt;&lt;/pre&gt;Selezionare &lt;code&gt;Toggle&lt;/code&gt; fino ad arrivare a &lt;code&gt;on (non-nil)&lt;/code&gt;.&lt;br /&gt;&lt;br /&gt;Se si è installata una distribuzione di LaTeX in un percorso non riconosciuto immediatamente da Emacs e AUCTeX bisognerà modificare alcune variabili. Per esempio, io ho installato TeX Live 2010 seguendo &lt;a href="http://profs.sci.univr.it/%7Egregorio/texlive-ubuntu.pdf"&gt;questa guida&lt;/a&gt; di Enrico Gregorio e tutti i file di LaTeX si trovano in sottocartelle di &lt;code&gt;/usr/local/texlive/2010/&lt;/code&gt; (in cui Emacs e AUCTeX normalmente non cercano). Fra le variabili che potrebbero dover essere cambiate ci sono &lt;code&gt;TeX-macro-global&lt;/code&gt; (contiene, ricorsivamente, le cartelle in cui AUCTeX cercherà i file di stile) e &lt;code&gt;exec-path&lt;/code&gt; (contiene i percorsi in cui Emacs cerca i programmi da eseguire). La modifica di queste variabili è simile a quanto visto finora. Per la prima variabile ho aggiunto il percorso &lt;code&gt;/usr/local/texlive/2010/texmf-dist/tex/&lt;/code&gt;, mentre per &lt;code&gt;exec-path&lt;/code&gt; ho aggiunto &lt;code&gt;/usr/local/texlive/2010/bin/i386-linux/&lt;/code&gt; (su architetture diverse dal 32 bit questo percorso sarà sicuramente diverso. Controllate per bene la posizione in cui avete installato la distribuzione).&lt;br /&gt;&lt;br /&gt;Per modificare il programma con cui viene aperto il documento di output (sia esso in formato DVI, PDF, HTML, ecc) tramite &lt;code&gt;C-c C-c View RET&lt;/code&gt; bisogna modificare la variabile &lt;code&gt;TeX-view-program-selection&lt;/code&gt;. Come al solito per personalizzare la variabile si può usare&lt;br /&gt;&lt;pre class="src src-emacs-lisp"&gt;customize-variable RET TeX-view-program-selection RET&lt;br /&gt;&lt;/pre&gt;Le impostazioni viste finora vengono salvate automaticamente da Emacs nel file di inizializzazione &lt;code&gt;~/.emacs&lt;/code&gt; (ricordo che la tilde &lt;code&gt;~&lt;/code&gt; è un'abbreviazione del percorso della propria cartella home, mentre i file che hanno il nome che inizia con un punto sono &lt;a href="http://elubuntu.blogspot.com/2009/06/file-e-cartelle-nascosti-nella-home.html"&gt;nascosti&lt;/a&gt;). Tutte queste impostazioni possono essere anche memorizzate modificando manualmente il file &lt;code&gt;.emacs&lt;/code&gt; (per poter fare ciò autonomamente bisogna però conoscere il linguaggio &lt;a href="http://www.gnu.org/software/emacs/manual/elisp.html"&gt;Emacs Lisp&lt;/a&gt;). Vediamo ora qualche altra utile opzione che imposteremo modificando direttamente il file &lt;code&gt;.emacs&lt;/code&gt; (queste comunque possono sempre essere impostate anche utilizzando l'interfaccia di &lt;code&gt;customize-variable&lt;/code&gt;).&lt;br /&gt;&lt;br /&gt;Il &lt;a href="http://www.gnu.org/software/auctex/manual/auctex.html"&gt;manuale&lt;/a&gt; di AUCTeX suggerisce di aggiungere a &lt;code&gt;.emacs&lt;/code&gt; le seguenti linee:&lt;br /&gt;&lt;pre class="src src-emacs-lisp"&gt;(setq TeX-auto-save t)&lt;br /&gt;(setq TeX-parse-self t)&lt;br /&gt;&lt;/pre&gt;in modo che ottenere supporto per i pacchetti LaTeX che vengono usati nei propri documenti (l'opzione &lt;code&gt;TeX-parse-self&lt;/code&gt; fa effettuare a Emacs il &lt;a href="http://it.wikipedia.org/wiki/Parsing"&gt;parsing&lt;/a&gt; del documento e le informazioni verranno raccolte in una sottocartella della directory del documento modificato chiamata &lt;code&gt;auto/&lt;/code&gt;. Se non si desidera affollamento nelle proprie cartelle si potrebbe non voler attivare queste due opzioni).&lt;br /&gt;&lt;br /&gt;Se si usa frequentemente suddividere i propri documenti LaTeX in più parti da includere nel file principale con i comandi &lt;code&gt;\input&lt;/code&gt; o &lt;code&gt;\include&lt;/code&gt; può essere utile aggiungere al file &lt;code&gt;.emacs&lt;/code&gt; l'opzione&lt;br /&gt;&lt;pre class="src src-emacs-lisp"&gt;(setq-default TeX-master nil)&lt;br /&gt;&lt;/pre&gt;In questo modo, all'apertura dei documenti LaTeX Emacs chiederà qual è il file principale associato (su cui dovrà, per esempio, eseguire i comandi di compilazione).&lt;br /&gt;&lt;br /&gt;Si può far in modo che all'apertura di un documento LaTeX Emacs esegua il controllo ortografico al volo aggiungendo a &lt;code&gt;.emacs&lt;/code&gt; l'opzione&lt;br /&gt;&lt;pre class="src src-lisp"&gt;(add-hook 'TeX-mode-hook 'flyspell-mode)&lt;br /&gt;&lt;/pre&gt;Inoltre, se si usa spesso LaTeX per comporre documenti matematici potrebbe essere utile aggiungere l'opzione&lt;br /&gt;&lt;pre class="src src-lisp"&gt;(add-hook 'TeX-mode-hook 'LaTeX-math-mode)&lt;br /&gt;&lt;/pre&gt;che permette il rapido inserimento di numerosi simboli matematici (vedi &lt;a href="http://www.gnu.org/software/auctex/manual/auctex.html#Mathematics"&gt;manuale&lt;/a&gt;). Infine, per fare in modo che il cursore vada a capo dopo l'inserimento di un numero prefissato di caratteri per rigo (ovviamene Emacs è intelligente, non spezza una parola in due, va a capo in modo che il rigo risulti lungo &lt;span style="font-style: italic;"&gt;al massimo&lt;/span&gt; il numero prefissato di caratteri) si può aggiungere l'opzione&lt;br /&gt;&lt;pre class="src src-lisp"&gt;(add-hook 'TeX-mode-hook 'turn-on-auto-fill)&lt;br /&gt;&lt;/pre&gt;Il numero di caratteri per rigo dopo il quale Emacs dovrà andare a capo è salvato nella variabile &lt;code&gt;fill-column&lt;/code&gt;. Lascio per esercizio scoprire come si modifica tale variabile (ok, lascio un indizio: si può usare sempre il solito comando :-D).&lt;br /&gt;&lt;br /&gt;Per effettuare un controllo della sintassi al volo si può inserire questo codice nel file di inizializzazione:&lt;br /&gt;&lt;pre class="src src-emacs-lisp"&gt;(&lt;span style="color: #a020f0;"&gt;require&lt;/span&gt; '&lt;span style="color: #008b8b;"&gt;flymake&lt;/span&gt;)&lt;br /&gt;(&lt;span style="color: #a020f0;"&gt;defun&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;flymake-get-tex-args&lt;/span&gt; (file-name)&lt;br /&gt;  (list &lt;span style="color: #8b2252;"&gt;"chktex"&lt;/span&gt; (list &lt;span style="color: #8b2252;"&gt;"-q"&lt;/span&gt; &lt;span style="color: #8b2252;"&gt;"-v0"&lt;/span&gt; file-name)))&lt;br /&gt;(add-hook 'LaTeX-mode-hook 'flymake-mode) &lt;br /&gt;&lt;/pre&gt;I dettagli di questa istruzioni e sue alternative sono illustrati nel post &lt;a href="http://elubuntu.blogspot.com/2011/04/emacs-effettuare-il-controllo-della.html"&gt;Emacs: effettuare il controllo della sintassi di documenti LaTeX&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-6047932392719182084?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/6047932392719182084/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2010/10/opzioni-utili-per-comporre-documenti.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/6047932392719182084'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/6047932392719182084'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2010/10/opzioni-utili-per-comporre-documenti.html' title='Opzioni utili per comporre documenti LaTeX in GNU Emacs + AUCTeX'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-7426561866383960812</id><published>2010-10-09T15:19:00.006+02:00</published><updated>2011-09-10T17:56:08.887+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ipe'/><category scheme='http://www.blogger.com/atom/ns#' term='latex'/><category scheme='http://www.blogger.com/atom/ns#' term='problema'/><title type='text'>Ipe: An error occurred during the Pdflatex run. There was an error reading the Pdflatex output [Risolto]</title><content type='html'>Se avete installato la distribuzione TeX Live 2010 e usate il programma di grafica Ipe per creare disegni, andando a compilare un'immagine potreste ricevere la seguente finestra di errore:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-family: courier new; font-weight: bold;"&gt;An error occurred during the Pdflatex run&lt;br /&gt;&lt;br /&gt;There was an error reading the Pdflatex output&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_YBnmJTR73Is/TLBtQRIWxcI/AAAAAAAAAHo/32qa1ERABuI/s1600/Errore_Ipe.png"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5526036869027382722" src="http://2.bp.blogspot.com/_YBnmJTR73Is/TLBtQRIWxcI/AAAAAAAAAHo/32qa1ERABuI/s320/Errore_Ipe.png" style="cursor: hand; cursor: pointer; display: block; height: 116px; margin: 0px auto 10px; text-align: center; width: 320px;" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;La soluzione a questo problema si trova(va) qui: &lt;a href="http://http.typke.com/cgi-bin/bugzilla3/show_bug.cgi?id=350"&gt;http://http.typke.com/cgi-bin/bugzilla3/show_bug.cgi?id=350&lt;/a&gt; e consiste nell'aggiungere al preambolo dell'immagine il comando &lt;span style="font-family: courier new; font-weight: bold;"&gt;\pdfobjcompresslevel0&lt;/span&gt;. Ricordo che il preambolo di un'immagine Ipe può essere modificato da &lt;span style="font-weight: bold;"&gt;Edit&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;Document properties&lt;/span&gt; (oppure con la scorciatoia da tastiera &lt;span style="font-weight: bold;"&gt;CTRL&lt;/span&gt; + &lt;span style="font-weight: bold;"&gt;Shift&lt;/span&gt; + &lt;span style="font-weight: bold;"&gt;P&lt;/span&gt;), scrivendo nel campo &lt;span style="font-weight: bold;"&gt;Latex preamble&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_YBnmJTR73Is/TLBujIGXI2I/AAAAAAAAAHw/oR-CFVjsFek/s1600/Ipe_document_properties.png"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5526038292532241250" src="http://2.bp.blogspot.com/_YBnmJTR73Is/TLBujIGXI2I/AAAAAAAAAHw/oR-CFVjsFek/s320/Ipe_document_properties.png" style="cursor: hand; cursor: pointer; display: block; height: 277px; margin: 0px auto 10px; text-align: center; width: 320px;" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-7426561866383960812?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/7426561866383960812/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2010/10/ipe-error-occurred-during-pdflatex-run.html#comment-form' title='2 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/7426561866383960812'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/7426561866383960812'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2010/10/ipe-error-occurred-during-pdflatex-run.html' title='Ipe: An error occurred during the Pdflatex run. There was an error reading the Pdflatex output [Risolto]'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_YBnmJTR73Is/TLBtQRIWxcI/AAAAAAAAAHo/32qa1ERABuI/s72-c/Errore_Ipe.png' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-3697031176664861430</id><published>2010-10-09T14:39:00.006+02:00</published><updated>2010-10-09T15:48:49.663+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='latex'/><category scheme='http://www.blogger.com/atom/ns#' term='guida'/><category scheme='http://www.blogger.com/atom/ns#' term='git'/><title type='text'>Git4LaTeX: una guida introduttiva a Git per progetti LaTeX</title><content type='html'>Chi scrive documenti con LaTeX potrebbe a un certo punto avere il bisogno di controllare lo sviluppo dei vari documenti, in modo da controllare i cambiamenti effettuati tra un salvataggio e l'altro per poter, eventualmente, anche individuare quando sono stati introdotti degli errori e poter in pochi passi ripristinare una versione precedente. In vostro soccorso arriva allora Git, programma di controllo versione. L'uso tipico di Git è quello di tenere traccia dello sviluppo di un software, ma svolge ugualmente bene il suo lavoro con i documenti LaTeX.&lt;br /&gt;&lt;br /&gt;Proprio per spiegare come utilizzare insieme Git e LaTeX, sul forum del Guit l'utente dianoia ha &lt;a href="http://www.guit.sssup.it/phpbb/viewtopic.php?t=8878"&gt;annunciato&lt;/a&gt; la realizzazione di una guida (con licenza &lt;a href="http://creativecommons.org/licenses/by-nc-sa/2.5/it/"&gt;CC-BY-NC-SA 2.5 Italy&lt;/a&gt;) sull'uso di Git per gestire lo sviluppo di un documento scritto in LaTeX. La guida non si prefigge grandi scopi, non diventerete degli esperti di Git leggendola, ma è sicuramente d'aiuto per riuscire a usare insieme questi due utili strumenti.&lt;br /&gt;&lt;br /&gt;Trovate il codice sorgente della sua guida di dianoia su Gitorious all'indirizzo &lt;a href="http://www.gitorious.org/git4latex"&gt;http://www.gitorious.org/git4latex&lt;/a&gt; e potete scaricare il documento PDF (che potrebbe risultare non aggiornato) all'indirizzo &lt;a href="http://hotfile.com/dl/74484041/9c21bb8/git4latex.pdf.html"&gt;http://hotfile.com/dl/74484041/9c21bb8/git4latex.pdf.html&lt;/a&gt;. Se avete Git sul vostro sistema potete potete clonare il repository con il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;git clone git://gitorious.org/git4latex/git4latex.git&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Infine il codice sorgente può essere scaricato anche in un archivio compresso all'indirizzo &lt;a href="http://www.gitorious.org/git4latex/git4latex/archive-tarball/master"&gt;http://www.gitorious.org/git4latex/git4latex/archive-tarball/master&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Visto che l'utente ha saggiamente pensato di utilizzare una licenza libera per questa utile guida ho realizzato un fork che potete trovare sempre su Gitorious all'indirizzo &lt;a href="http://www.gitorious.org/~elrondgit/git4latex/elrondgits-git4latex/commits/elrond"&gt;http://www.gitorious.org/~elrondgit/git4latex/elrondgits-git4latex/commits/elrond&lt;/a&gt;, il PDF (anche questo non sempre aggiornato) può essere scaricato all'indirizzo &lt;a href="http://elubuntu.altervista.org/LaTeX/git4latex.pdf"&gt;http://elubuntu.altervista.org/LaTeX/git4latex.pdf&lt;/a&gt;. Sempre se avete Git installato nel sistema potete clonare il repository con il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;git clone git://gitorious.org/~elrondgit/git4latex/elrondgits-git4latex.git elrondgits-git4latex&lt;br /&gt;cd elrondgits-git4latex # per entrare nella cartella&lt;br /&gt;git checkout elrond # per aprire il branch&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;(gli ultimi due comandi, come spiegato nei commenti, servono per visualizzare il mio branch). Per finire anche questo lungo elenco di indirizzi segnalo che il mio branch può essere scaricato in un archivio compresso all'indirizzo &lt;a href="http://www.gitorious.org/git4latex/elrondgits-git4latex/archive-tarball/elrond"&gt;http://www.gitorious.org/git4latex/elrondgits-git4latex/archive-tarball/elrond&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Qualsiasi critica (costruttiva), segnalazione di imprecisione o richiesta di chiarimento è ben gradita!&lt;br /&gt;&lt;br /&gt;Happy TeXing :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-3697031176664861430?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/3697031176664861430/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2010/10/git4latex-una-guida-introduttiva-git.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/3697031176664861430'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/3697031176664861430'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2010/10/git4latex-una-guida-introduttiva-git.html' title='Git4LaTeX: una guida introduttiva a Git per progetti LaTeX'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-686919001058980874</id><published>2010-09-20T17:33:00.000+02:00</published><updated>2010-09-20T17:33:54.082+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='compilazione'/><category scheme='http://www.blogger.com/atom/ns#' term='gnuplot'/><category scheme='http://www.blogger.com/atom/ns#' term='terminale'/><title type='text'>Compilare gnuplot 4.4 con il supporto per il terminale Lua/TikZ</title><content type='html'>Da qualche tempo è uscita la versione 4.4 &lt;a href="http://www.gnuplot.info/"&gt;gnuplot&lt;/a&gt;. Gli utenti di Debian Sid/Squeeze possono installarla normalmente con il gestore pacchetti, gli utenti di Ubuntu Lucid Lynx possono scaricare i pacchetti deb dagli archivi di Debian: &lt;a href="http://packages.debian.org/sid/gnuplot"&gt;http://packages.debian.org/sid/gnuplot&lt;/a&gt;. Questa versione di gnuplot introduce inoltre il supporto nativo al terminale Lua/TikZ, utile per l'inserimento di grafici in documenti LaTeX (ricordo che comunque è presente anche il terminale &lt;span style="font-weight: bold;font-family:courier new;" &gt;epslatex&lt;/span&gt; per fare ciò). Il pacchetto presente in Debian Sid, però, al momento non supporta questo terminale quindi la compilazione del programma a partire dal sorgente è una delle strade possibili per poterlo utilizzare.&lt;br /&gt;&lt;br /&gt;Ovviamente per compilare il programma la prima cosa da fare è procurarsi il codice sorgente. Questo può essere trovato &lt;a href="http://sourceforge.net/projects/gnuplot/files/"&gt;qui&lt;/a&gt;. Come secondo passo bisogna installare le dipendenze per la compilazione. Un elenco delle librerie da installare può essere trovata qui (nelle altre distribuzioni i nomi potrebbero differire leggermente): &lt;a href="http://packages.debian.org/source/sid/gnuplot"&gt;http://packages.debian.org/source/sid/gnuplot&lt;/a&gt;. Nei sistemi che utilizzano &lt;a href="http://it.wikipedia.org/wiki/Advanced_Packaging_Tool"&gt;APT&lt;/a&gt; (come Debian e Ubuntu) e in cui il sorgente di gnuplot è presente nei repository è possibile installare tutte queste dipendenze con il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo apt-get build-dep gnuplot&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Per poter utilizzare il terminale Lua/TikZ è però necessario installare inoltre l'interprete Lua e le librerie necessarie per la compilazione. In Debian e Ubuntu è sufficiente installare il pacchetto &lt;a href="apt:liblua5.1-0-dev"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;liblua5.1-0-dev&lt;/span&gt;&lt;/a&gt;. Prima di continuare bisogna creare un link simbolico:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo ln -s /usr/lib/pkgconfig/lua5.1.pc /usr/lib/pkgconfig/lua.pc&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Senza questa operazione non verrebbe individuata la presenza di Lua in fase di compilazione di gnuplot.&lt;br /&gt;&lt;br /&gt;A questo punto bisogna scompattare l'archivio compresso appena scaricato e spostarsi con il &lt;a href="http://elubuntu.blogspot.com/2009/02/il-terminale.html"&gt;terminale&lt;/a&gt; nella cartella in cui ora si trova il sorgente. Per compilare il programma, con il supporto al terminale Lua/TikZ bisogna dare i comandi&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;./configure --with-lua&lt;br /&gt;make&lt;br /&gt;sudo make install&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Dopo l'esecuzione dello script &lt;span style="font-weight: bold;font-family:courier new;" &gt;configure&lt;/span&gt; controllate che lo script Lua sia presente fra quelli che verranno compilati. Al posto del comando &lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo make install&lt;/span&gt; potete usare&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo checkinstall&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;dopo aver installato il pacchetto &lt;a href="apt:checkinstall"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;checkinstall&lt;/span&gt;&lt;/a&gt;, che creerà un pacchetto deb per una più semplice rimozione e installazione del programma.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-686919001058980874?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/686919001058980874/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2010/09/compilare-gnuplot-44-con-il-supporto.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/686919001058980874'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/686919001058980874'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2010/09/compilare-gnuplot-44-con-il-supporto.html' title='Compilare gnuplot 4.4 con il supporto per il terminale Lua/TikZ'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-1273696691806442405</id><published>2010-09-20T17:31:00.004+02:00</published><updated>2011-10-11T15:08:37.077+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='latex'/><category scheme='http://www.blogger.com/atom/ns#' term='pacchetti'/><category scheme='http://www.blogger.com/atom/ns#' term='amministrazione'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><category scheme='http://www.blogger.com/atom/ns#' term='terminale'/><title type='text'>Creare un metapacchetto deb con equivs</title><content type='html'>&lt;span style="font-style: italic;"&gt;Seguite queste istruzioni a vostro rischio e pericolo, non assicuro che non possano creare qualche dipendenza rotta.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;In &lt;a href="http://it.wikipedia.org/wiki/Advanced_Packaging_Tool"&gt;APT&lt;/a&gt; (il sistema che gestisce i pacchetti di Debian, Ubuntu e compagnia) i &lt;a href="http://wiki.ubuntu-it.org/AmministrazioneSistema/MetaPacchetti"&gt;metapacchetti&lt;/a&gt; (o &lt;span style="font-style: italic;"&gt;dummy packages&lt;/span&gt;, pacchetti silenziosi) sono dei pacchetti che non forniscono un vero e proprio software ma che permettono di installare come dipendenze altri programmi. È, per esempio, un metapacchetto &lt;code&gt;ubuntu-desktop&lt;/code&gt;: in sé non installa nessun programma, ma fa installare come dipendenze tutti i programmi presenti di default nella versione desktop di Ubuntu.&lt;br /&gt;&lt;br /&gt;È possibile creare (in Debian e Ubuntu) dei metapacchetti con il programma &lt;code&gt;equivs&lt;/code&gt;. Si installa normalmente da repository. Come al solito si può scegliere la via grafica installando con Synaptic il pacchetto &lt;code&gt;&lt;a href="apt:equivs"&gt;equivs&lt;/a&gt;&lt;/code&gt;, oppure da terminale con il comando&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;sudo apt-get install equivs&lt;br /&gt;&lt;/pre&gt;&lt;code&gt;equivs&lt;/code&gt;, che funziona da terminale, fornisce due comandi: &lt;code&gt;equivs-control&lt;/code&gt; ed &lt;code&gt;equivs-build&lt;/code&gt;. Il primo genera il file di configurazione del metapacchetto che si vorrà creare:&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;equivs-control &lt;i&gt;nomepacchetto&lt;/i&gt;&lt;br /&gt;&lt;/pre&gt;creerà un file chiamato &lt;code&gt;&lt;i&gt;nomepacchetto&lt;/i&gt;&lt;/code&gt; (ovviamente sostituirete a &lt;code&gt;&lt;i&gt;nomepacchetto&lt;/i&gt;&lt;/code&gt; il nome del metapacchetto che vi interessa creare). Il file deve essere modificato con un qualsiasi editor di testo affinché contenga le impostazioni desiderate. Le opzioni che devono essere necessariamente presenti sono &lt;code&gt;Package&lt;/code&gt;, &lt;code&gt;Description&lt;/code&gt; e &lt;code&gt;Depends&lt;/code&gt;. Ricordarsi di rimuovere il cancelletto (&lt;a href="http://it.wikipedia.org/wiki/Commento"&gt;decommentare&lt;/a&gt;) davanti a tutte le opzioni modificate.&lt;br /&gt;&lt;br /&gt;Con&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;equivs-build &lt;i&gt;nomepacchetto&lt;/i&gt;&lt;br /&gt;&lt;/pre&gt;(&lt;code&gt;&lt;i&gt;nomepacchetto&lt;/i&gt;&lt;/code&gt; deve essere il nome del file creato con il comando precedente) si costruisce nella stesa cartella il pacchetto deb sulla base delle informazioni contenute nel file appena impostato che potrà essere installato facendoci doppio clic sopra oppure ancora da terminale con il comando&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;sudo dpkg -i &lt;i&gt;nomepacchetto&lt;/i&gt;.deb&lt;br /&gt;&lt;/pre&gt;(il nome però non sarà semplicemente &lt;code&gt;&lt;i&gt;nomepacchetto&lt;/i&gt;.deb&lt;/code&gt; ma conterrà il numero della versione e l'architettura impostate, usate l'autocompletamento con il tasto TAB per sapere qual è il nome, oppure semplicemente controllatelo aprendo la cartella).&lt;br /&gt;&lt;br /&gt;Un dei possibili usi dei metapacchetti è quello di poter installare con un solo doppio clic numerosi programmi (inserendoli come dipendenze del metapacchetto creato), oppure far credere al sistema APT che sia installato un determinato programma quando lo si è installato in maniera diversa (per esempio attraverso la compilazione del codice sorgente).&lt;br /&gt;&lt;br /&gt;In questi giorni ho installato la distribuzione TeX Live 2010 dal &lt;a href="http://www.tug.org/texlive/"&gt;sito&lt;/a&gt; e voglio che APT veda tutti i pacchetti relativi a TeX Live siano installati (perché la distribuzione è installata all'esterno del gestore pacchetti APT, ma lui non è a conoscenza di ciò ovviamente), in modo da poter installare altri programmi dipendenti da questi pacchetti. Per fare ciò ho creato il file &lt;code&gt;texlive&lt;/code&gt; con il seguente contenuto:&lt;br /&gt;&lt;pre class="src src-fundamental"&gt;Section: tex&lt;br /&gt;Package: texlive-dummy&lt;br /&gt;Version: 2011&lt;br /&gt;Homepage: http://tug.org/texlive/&lt;br /&gt;Standards-Version: 3.9.2&lt;br /&gt;Provides: asymptote, asymptote-doc, biblatex, biblatex-dw, cm-super, context, dblatex, dvipdfmx, dvipng, feynmf, fragmaster, guile-1.8, jadetex, lacheck, latex2html, latex-beamer, latex-cjk-all, latexmk, latex-xcolor, lcdf-typetools, libsigsegv0, lilypond, lilypond-data, lilypond-doc, lmodern, luatex, passivetex, pgf, preview-latex-style, prosper, ps2eps, psutils, t1utils, tex4ht, tex4ht-common, tex-common, texlive, texlive-base, texlive-base-bin, texlive-base-bin-doc, texlive-bibtex-extra, texlive-binaries, texlive-common, texlive-doc-base, texlive-doc-bg, texlive-doc-cs+sk, texlive-doc-de, texlive-doc-en, texlive-doc-es, texlive-doc-fi, texlive-doc-fr, texlive-doc-it, texlive-doc-ja, texlive-doc-ko, texlive-doc-mn, texlive-doc-nl, texlive-doc-pl, texlive-doc-pt, texlive-doc-ru, texlive-doc-si, texlive-doc-th, texlive-doc-tr, texlive-doc-uk, texlive-doc-vi, texlive-doc-zh, texlive-extra-utils, texlive-fonts-extra, texlive-fonts-extra-doc, texlive-fonts-recommended, texlive-fonts-recommended-doc, texlive-font-utils, texlive-formats-extra, texlive-games, texlive-generic-extra, texlive-generic-recommended, texlive-humanities, texlive-humanities-doc, texlive-lang-african, texlive-lang-arabic, texlive-lang-armenian, texlive-lang-croatian, texlive-lang-cyrillic, texlive-lang-czechslovak, texlive-lang-danish, texlive-lang-dutch, texlive-lang-finnish, texlive-lang-french, texlive-lang-german, texlive-lang-greek, texlive-lang-hebrew, texlive-lang-hungarian, texlive-lang-indic, texlive-lang-italian, texlive-lang-latin, texlive-lang-latvian, texlive-lang-lithuanian, texlive-lang-mongolian, texlive-lang-norwegian, texlive-lang-other, texlive-lang-polish, texlive-lang-portuguese, texlive-lang-spanish, texlive-lang-swedish, texlive-lang-tibetan, texlive-lang-ukenglish, texlive-lang-vietnamese, texlive-latex3, texlive-latex-base, texlive-latex-base-doc, texlive-latex-extra, texlive-latex-extra-doc, texlive-latex-recommended, texlive-latex-recommended-doc, texlive-luatex, texlive-math-extra, texlive-metapost, texlive-metapost-doc, texlive-music, texlive-omega, texlive-pictures, texlive-pictures-doc, texlive-plain-extra, texlive-pstricks, texlive-pstricks-doc, texlive-publishers, texlive-publishers-doc, texlive-science, texlive-science-doc, texlive-xetex, tipa, xmltex&lt;br /&gt;Architecture: all&lt;br /&gt;Description: texlive dummy package&lt;br /&gt;&lt;/pre&gt;Quelli elencati in &lt;code&gt;Provides&lt;/code&gt; sono i pacchetti della distribuzione TeX Live che ho trovato o che comunque avevo bisogno di far finta che fossero installati, ne esistono molti altri non presenti in questo elenco. Con il comando&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;equivs-build texlive&lt;br /&gt;&lt;/pre&gt;ho generato il pacchetto deb che ho potuto installare con un doppio clic.&lt;br /&gt;&lt;br /&gt;Come suggerito nella documentazione (in particolare nel manuale di &lt;code&gt;equivs-build&lt;/code&gt;), se riscontrate qualche caso in cui il sistema delle dipendenze dei pacchetti dovrebbe essere migliorato, non usate &lt;code&gt;equivs&lt;/code&gt; ma piuttosto segnalate agli sviluppatori il problema.&lt;br /&gt;&lt;br /&gt;Qui trovate altre informazioni sulla gestione dei metapacchetti: &lt;a href="http://guide.debianizzati.org/index.php/Gestione_dei_metapacchetti"&gt;http://guide.debianizzati.org/index.php/Gestione_dei_metapacchetti&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-1273696691806442405?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/1273696691806442405/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2010/09/creare-un-metapacchetto-deb-con-equivs.html#comment-form' title='2 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/1273696691806442405'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/1273696691806442405'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2010/09/creare-un-metapacchetto-deb-con-equivs.html' title='Creare un metapacchetto deb con equivs'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-3776944295251407397</id><published>2010-07-27T21:40:00.003+02:00</published><updated>2011-09-17T16:16:18.323+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='touchpad'/><category scheme='http://www.blogger.com/atom/ns#' term='problema'/><category scheme='http://www.blogger.com/atom/ns#' term='portatili'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>Touchpad non funzionante in Ubuntu Lucid Lynx [Risolto]</title><content type='html'>Nella versione 10.04 di Ubuntu (nome in codice Lucid Lynx, ma ho ricevuto &lt;a href="http://elubuntu.blogspot.com/2010/07/touchpad-non-funzionante-in-ubuntu.html?showComment=1316267648275#c3246378937160324829"&gt;segnalazioni&lt;/a&gt; di questo problema anche nelle versioni successive) può capitare che dopo l'avvio della sessione il mouse smetta di funzionare. Il problema è stato segnalato su Launchpad, intanto esistono un paio di risoluzioni.&lt;br /&gt;&lt;br /&gt;La prima è un semplice workaround per aggirare momentaneamente il problema quando si presenta: entrare in una console con i tasti ALT + CTRL + F1 e poi, senza fare altro, tornare nella shell grafica con la combinazione ALT + CTRL + F7.&lt;br /&gt;&lt;br /&gt;Un'altra soluzione che dovrebbe invece essere definitiva (ma che personalmente non ho testato, però &lt;a href="http://forum.ubuntu-it.org/index.php/topic,336132.msg3116457.html#msg3116457"&gt;più di qualcuno&lt;/a&gt; conferma essere funzionante) è dare questo comando nel terminale:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;gconftool --type bool --set /desktop/gnome/peripherals/touchpad/touchpad_enabled true&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Ho trovato questa seconda soluzione qui: &lt;a href="https://bugs.edge.launchpad.net/ubuntu/+source/xserver-xorg-input-synaptics/+bug/549727/comments/103"&gt;https://bugs.edge.launchpad.net/ubuntu/+source/xserver-xorg-input-synaptics/+bug/549727/comments/103&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-3776944295251407397?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/3776944295251407397/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2010/07/touchpad-non-funzionante-in-ubuntu.html#comment-form' title='19 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/3776944295251407397'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/3776944295251407397'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2010/07/touchpad-non-funzionante-in-ubuntu.html' title='Touchpad non funzionante in Ubuntu Lucid Lynx [Risolto]'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>19</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-2663228942591171162</id><published>2010-07-18T11:01:00.005+02:00</published><updated>2010-07-18T11:48:34.373+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='compilazione'/><category scheme='http://www.blogger.com/atom/ns#' term='amministrazione'/><category scheme='http://www.blogger.com/atom/ns#' term='terminale'/><title type='text'>Come si installa un .tar.gz?</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://commons.wikimedia.org/wiki/File:Torchlight_tar.png"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 128px; height: 128px;" src="http://upload.wikimedia.org/wikipedia/commons/2/27/Torchlight_tar.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;Una domanda abbastanza frequente sul forum della comunità italiana di Ubuntu è su come installare un .tar.gz (o anche un .tar.bz2 e compagnia bella). La risposta è semplice:&lt;div style="text-align: center;"&gt;&lt;span style="font-weight: bold;"&gt;la domanda non ha senso&lt;/span&gt;.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Un .tar.gz (o un .tar.bz2) è un insieme di file archiviati con &lt;a href="http://it.wikipedia.org/wiki/TAR_%28software%29"&gt;tar&lt;/a&gt; e compresso con &lt;a href="http://it.wikipedia.org/wiki/Gzip"&gt;gzip&lt;/a&gt; (o &lt;a href="http://it.wikipedia.org/wiki/Bzip2"&gt;bzip2&lt;/a&gt; nel caso dei .tar.bz, negli altri formati cambierà il tipo di compressione), ma dentro può esserci qualsiasi cosa (binari precompilati, sorgenti da compilare a mano, programma in python che non va compilato, temi per il desktop, chi più ne ha più ne metta) ed è per questo motivo che non ha senso chiedere come si installi. In generale non si può dire niente su cosa si debba fare con un archivio senza sapere cosa ci sia dentro. È come chiedere «come si apre un file?» senza dire di che file si tratti.&lt;br /&gt;&lt;br /&gt;Esempio famoso: Mozilla distribuisce sul suo sito Firefox e Thunderbird (e altri programmi) per sistemi GNU/Linux in archivi .tar.bz2 che contengono dentro i programmi &lt;span style="font-weight:bold;"&gt;già compilati&lt;/span&gt; e pronti per l'uso (una cosa che molta gente sembra non capire, nonostante gli venga detto, è che non c'è bisogno di compilare proprio niente in questo caso). Qui non c'è nulla da installare, per avviare i due programmi basterà scompattare l'archivio (e per favore, se non siete in grado (come me) di farlo da terminale, scompattate attraverso interfaccia grafica, non capisco perché la gente si ammazzi a scompattare da linea di comando quando bastano due clic) e fare doppio clic sul file &lt;span style="font-weight: bold;font-family:courier new;" &gt;firefox&lt;/span&gt; o &lt;span style="font-weight: bold;font-family:courier new;" &gt;thunderbird&lt;/span&gt;, a seconda del programma.&lt;br /&gt;&lt;br /&gt;Allora la domanda sorgente spontanea: come faccio a capire cosa me ne devo fare di questo archivio? Anche qui la risposta è semplice: &lt;span style="font-weight:bold;"&gt;aprirlo&lt;/span&gt;. Nella stragrande maggioranza dei casi è presente un file chimato &lt;span style="font-weight: bold;font-family:courier new;" &gt;README&lt;/span&gt; che contiene le istruzioni (purtroppo praticamente sempre in inglese) sul da farsi (estrarre l'archivio e compilare, oppure estrarre e fare doppio clic su un file o altro).&lt;br /&gt;&lt;br /&gt;Nel caso in cui l'archivio contenga il sorgente di un programma da compilare è spesso presente anche un altro file chiamato &lt;span style="font-weight: bold;font-family:courier new;" &gt;INSTALL&lt;/span&gt; che spiega più dettagliatamente come si compila il programma, anche se spesso sono sufficienti i "comandi magici":&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;./configure&lt;br /&gt;make&lt;br /&gt;# make install&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;È bene comunque controllare sempre le istruzioni per la compilazione e non partire in quarta con questi comandi, ci sono tantissimi programmi che non devono essere compilati in questo modo.&lt;br /&gt;&lt;br /&gt;Concludendo, se avete scaricato un .tar.gz/.bz2/.lzma/ecc. e volete chiedere aiuto su un forum &amp; Co. è sensato porre la domanda «Ho scaricato il programma &lt;span style="font-style:italic;"&gt;xyz&lt;/span&gt; [magari fornendo anche link al sito da cui si è scaricato l'archivio], come faccio a utilizzarlo?» ma non «Ho scaricato un .tar.gz [senza fornire alcuna indicazione su quale programma si tratti...], come si installa?» perché, come mi sembra di aver già detto,&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-weight: bold;"&gt;la domanda non ha senso&lt;/span&gt;.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-2663228942591171162?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/2663228942591171162/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2010/07/come-si-installa-un-targz.html#comment-form' title='15 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/2663228942591171162'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/2663228942591171162'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2010/07/come-si-installa-un-targz.html' title='Come si installa un .tar.gz?'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>15</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-1696034210962331717</id><published>2010-05-18T22:19:00.005+02:00</published><updated>2010-05-18T22:59:42.747+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='guida'/><category scheme='http://www.blogger.com/atom/ns#' term='wubi'/><category scheme='http://www.blogger.com/atom/ns#' term='problema'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><category scheme='http://www.blogger.com/atom/ns#' term='terminale'/><title type='text'>Aprire file system di Wubi da Live CD</title><content type='html'>Se avete fatto la sciagurata scelta di installare Ubuntu tramite &lt;a href"http://it.wikipedia.org/wiki/Wubi"&gt;Wubi&lt;/a&gt; e avete incontrato dei problemi che impediscono l'avvio del sistema, potete ancora accedere alla "partizione" di Wubi (anche se il nome "partizione" non è del tutto corretto) usando un &lt;a href="http://it.wikipedia.org/wiki/Live_CD"&gt;Live CD&lt;/a&gt; (va bene di qualsiasi distribuzione). Dopo aver avviato il sistema da cd bisogna aprire un terminale, &lt;a href="http://wiki.ubuntu-it.org/Hardware/DispositiviPartizioni/MontarePartizioni"&gt;montare la partizione&lt;/a&gt; di Windows in cui è installato Wubi (la posizione, in Windows, del file system di Ubuntu dovrebbe essere il file &lt;span style="font-weight: bold;font-family:courier new;" &gt;C:\ubuntu\disk\root.disk&lt;/span&gt;, o simile). La partizione di Windows può essere anche normalmente montata per via grafica, se possibile (per esempio con GNOME è sufficiente fare clic, in Nautilus, sul nome della partizione desiderata). A questo punto, dare nel terminale i seguenti comandi:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo mkdir /vdisk&lt;br /&gt;sudo mount -o loop /media/WINDOWS/ubuntu/disks/root.disk /vdisk&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Il primo serve per creare nel sistema live la cartella &lt;span style="font-weight: bold;font-family:courier new;" &gt;/vdisk&lt;/span&gt; (è comunque possibile dare un percorso e nome arbitrario alla cartella), il secondo per montare il file system di Wubi e usare come punto di montaggio la cartella appena creata. Il penultimo argomento del comando &lt;span style="font-weight: bold;font-family:courier new;" &gt;mount&lt;/span&gt; è il percorso del file system di Wubi, da adattare al proprio caso: in genere le partizioni si montano nella cartella &lt;span style="font-weight: bold;font-family:courier new;" &gt;/media&lt;/span&gt; (e così fa in modo predefinito Nautilus, ma è possibile montare in un punto diverso, come infatti faremo) e poi ho scritto &lt;span style="font-weight: bold;font-family:courier new;" &gt;WINDOWS&lt;/span&gt; che sta a indicare il nome dell'etichetta della partizione (molto probabilmente non sarà questa l'etichetta della partizione, controllate per bene qual è il nome). Per vedere l'elenco delle partizioni montate e relativo punto di montaggio si può dare semplicemente il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;mount&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;senza altri argomenti. Il resto del percorso (&lt;span style="font-weight: bold;font-family:courier new;" &gt;ubuntu/disk/root.disk&lt;/span&gt;) dovrebbe essere corretto (come detto prima, questo è il percorso in cui si dovrebbe trovare il file in Windows). L'&lt;a href="http://elubuntu.blogspot.com/2009/02/il-terminale.html"&gt;autocompletamento&lt;/a&gt; nel terminale potrebbe aiutarvi a inserire il percorso corretto.&lt;br /&gt;&lt;br /&gt;A questo punto è possibile aprire normalmente il file system di Wubi come una normale partizione montata. Attenti a non fare ulteriori danni all'installazione di Ubuntu, la state già facendo soffrire abbastanza usando Wubi ^^&lt;br /&gt;&lt;br /&gt;Avvertenza: se nell'installazione di Wubi si è scelto il file system ext4, per potervi accedere ci sarà bisogno di un Live CD che riconosca questo recente file system. Per esempio, usando Ubuntu ci sarà bisogno del cd della versione 9.04 o successiva.&lt;br /&gt;&lt;br /&gt;Questa guida è stata ripresa da &lt;a href="https://wiki.ubuntu.com/WubiGuide"&gt;https://wiki.ubuntu.com/WubiGuide&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-1696034210962331717?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/1696034210962331717/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2010/05/aprire-file-system-di-wubi-da-live-cd.html#comment-form' title='1 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/1696034210962331717'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/1696034210962331717'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2010/05/aprire-file-system-di-wubi-da-live-cd.html' title='Aprire file system di Wubi da Live CD'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-5852101414224621228</id><published>2010-04-05T19:45:00.004+02:00</published><updated>2010-04-05T20:43:34.340+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='compilazione'/><category scheme='http://www.blogger.com/atom/ns#' term='guida'/><category scheme='http://www.blogger.com/atom/ns#' term='problema'/><category scheme='http://www.blogger.com/atom/ns#' term='emacs'/><category scheme='http://www.blogger.com/atom/ns#' term='terminale'/><title type='text'>Autocompletamento in Emacs (2)</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://cx4a.org/software/auto-complete/ac.png"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 414px; height: 309px;" src="http://cx4a.org/software/auto-complete/ac.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="font-weight: bold;"&gt;Nota&lt;/span&gt;: questo post spiega come installare la nuova versione (1.2) dell'estensione auto-complete per Emacs. Le istruzioni per installare la vecchia versione (1.0) si trovano nel post &lt;a href="http://elubuntu.blogspot.com/2009/12/autocompletamento-in-emacs.html"&gt;Autocompletamento in Emacs&lt;/a&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;In passato avevo spiegato come installare la versione 1.0 dell'estensione &lt;a href="http://cx4a.org/software/auto-complete/"&gt;auto-complete&lt;/a&gt; per l'editor di testo &lt;a href="http://www.gnu.org/software/emacs/"&gt;GNU Emacs&lt;/a&gt;. Nel frattempo lo sviluppo dell'estensione è andato avanti e ora il programma fornisce delle nuove funzioni che si possono leggere &lt;a href="http://cx4a.org/software/auto-complete/changes-v1.2.html"&gt;qui&lt;/a&gt;. Ora vediamo come installare questa nuova versione (queste istruzioni sono riprese da &lt;a href="http://cx4a.org/software/auto-complete/manual.html#Installation_Script"&gt;qui&lt;/a&gt;, in lingua inglese).&lt;br /&gt;&lt;br /&gt;Per prima cosa è ovviamente necessario scaricare l'estensione. L'ultima versione stabile può essere ottenuta all'indirizzo &lt;a href="http://cx4a.org/software/auto-complete/#Latest_Stable"&gt;http://cx4a.org/software/auto-complete/#Latest_Stable&lt;/a&gt; (è possibile anche installare una versione di sviluppo da &lt;a href="http://github.com/m2ym/auto-complete"&gt;git&lt;/a&gt;, ma non spiegherò come farlo in questo post). Nel momento in cui scrivo l'ultima versione stabile è la 1.2 e l'archivio da scaricare si trova all'indirizzo &lt;a href="http://cx4a.org/pub/auto-complete/auto-complete-1.2.tar.bz2"&gt;http://cx4a.org/pub/auto-complete/auto-complete-1.2.tar.bz2&lt;/a&gt; (è indifferente scaricare l'archivio .zip o .tar.bz2). Scompattiamo l'archivio e ci spostiamo nel &lt;a href="http://elubuntu.blogspot.com/2009/02/il-terminale.html"&gt;terminale&lt;/a&gt; con il comando &lt;span style="font-weight: bold;font-family:courier new;" &gt;cd&lt;/span&gt; nella cartella appena scompattata. Se per esempio abbiamo scompattato l'archivio in &lt;span style="font-weight: bold;font-family:courier new;" &gt;~/Scrivania&lt;/span&gt; (ricordo che la tilde &lt;span style="font-weight: bold;font-family:courier new;" &gt;~&lt;/span&gt; è un'abbreviazione del percorso della home dell'utente corrente) ci dovremo spostare nella cartella &lt;span style="font-weight: bold;font-family:courier new;" &gt;~/Scrivania/auto-complete-1.2&lt;/span&gt; (nelle versioni successive alla 1.2 la cartella cambierà presumibilmente il nome) con il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;cd ~/Scrivania/auto-complete-1.2&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Per installare il l'estensione è sufficiente dare il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;emacs -batch -l etc/install.el&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Alla richiesta&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;Install to: &lt;/span&gt;&lt;br /&gt;&lt;/div&gt;dobbiamo inserire il percorso della cartella in cui installare l'estensione. In genere queste estensioni vengono installate in &lt;span style="font-weight: bold;font-family:courier new;" &gt;~/.emacs.d&lt;/span&gt;, quindi in questo caso dobbiamo solo scrivere&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;~/.emacs.d&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;A questo punto, se l'installazione è andata a buon fine leggeremo il messaggio&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;Successfully installed!&lt;br /&gt;&lt;br /&gt;Add the following code to your .emacs:&lt;br /&gt;&lt;br /&gt;(add-to-list 'load-path "~/.emacs.d")&lt;br /&gt;(require 'auto-complete-config)&lt;br /&gt;(add-to-list 'ac-dictionary-directories "~/.emacs.d/ac-dict")&lt;br /&gt;(ac-config-default)&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Per poter utilizzare questa estensione dobbiamo infine fare ciò che ci viene detto: aggiungere le stringhe sopraelencate al file &lt;span style="font-weight: bold;font-family:courier new;" &gt;~/.emacs&lt;/span&gt;. Per fare ciò apriamo il file suddetto (ricordo che i file e le cartelle che hanno il nome che inizia con il punto sono &lt;a href="http://elubuntu.blogspot.com/2009/06/file-e-cartelle-nascosti-nella-home.html"&gt;nascosti&lt;/a&gt;) con il nostro editor di testo preferito (per esempio Emacs :D) e aggiungiamo alla fine le stringhe&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;(add-to-list 'load-path "~/.emacs.d")&lt;br /&gt;(require 'auto-complete-config)&lt;br /&gt;(add-to-list 'ac-dictionary-directories "~/.emacs.d/ac-dict")&lt;br /&gt;(ac-config-default)&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;La prima serve per aggiungere la cartella &lt;span style="font-weight: bold;font-family:courier new;" &gt;~/.emacs.d&lt;/span&gt; alla variabile &lt;span style="font-weight: bold;font-family:courier new;" &gt;load-path&lt;/span&gt;, che contiene l'elenco delle cartelle in cui vengono cercati i file da caricare. Se la variabile contiene già questa cartella non sarà necessario aggiungerla nuovamente (in Emacs si può vedere il contenuto della variabile &lt;span style="font-weight: bold;font-family:courier new;" &gt;load-path&lt;/span&gt; con &lt;span style="font-weight: bold;font-family:courier new;" &gt;C-h v load-path RET&lt;/span&gt;). Se si era installata la  &lt;a href="http://elubuntu.blogspot.com/2009/12/autocompletamento-in-emacs.html"&gt;vecchia versione&lt;/a&gt; di auto-complete è conveniente rimuovere le stringhe precedentemente inserite prima di aggiungere le nuove (anche se alcune coincidono).&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://cx4a.org/software/auto-complete/ac-isearch.png"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 414px; height: 309px;" src="http://cx4a.org/software/auto-complete/ac-isearch.png" border="0" alt="" /&gt;&lt;/a&gt;Ora esiste anche un &lt;a href="http://cx4a.org/software/auto-complete/"&gt;sito&lt;/a&gt; (in inglese) dedicato a questa estensione, con una ricca &lt;a href="http://cx4a.org/software/auto-complete/manual.html"&gt;documentazione&lt;/a&gt; che spiega per esempio come creare nuovi dizionari per determinate major mode di Emacs.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-5852101414224621228?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/5852101414224621228/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2010/04/autocompletamento-in-emacs-2.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/5852101414224621228'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/5852101414224621228'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2010/04/autocompletamento-in-emacs-2.html' title='Autocompletamento in Emacs (2)'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-6217718214746667023</id><published>2010-02-12T21:50:00.003+01:00</published><updated>2010-02-12T22:07:30.462+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='gnuplot'/><category scheme='http://www.blogger.com/atom/ns#' term='problema'/><category scheme='http://www.blogger.com/atom/ns#' term='matematica'/><title type='text'>[Risolto] Gnuplot va in crash usando wxt come terminale</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_YBnmJTR73Is/S3XCg0n_URI/AAAAAAAAAHY/4Rl8h9OfBJA/s1600-h/Schermata-Preferenze+delle+tecnologie+assistive.png"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 320px; height: 227px;" src="http://2.bp.blogspot.com/_YBnmJTR73Is/S3XCg0n_URI/AAAAAAAAAHY/4Rl8h9OfBJA/s320/Schermata-Preferenze+delle+tecnologie+assistive.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5437465994257715474" /&gt;&lt;/a&gt;Usando `wxt' come terminale in &lt;a href="http://www.gnuplot.info/"&gt;Gnuplot&lt;/a&gt;, famoso programma per disegnare grafici di funzioni matematiche, crasha irrimediabilmente poco dopo che viene rappresentato il grafico (non so se questo problema si presenti solo su Ubuntu o anche su altri sistemi). Il problema si risolve facilmente cambiando terminale, per esempio usando `x11'. Se però preferite usare il più ricco wxt, su Launchpad è stato segnalato (già da un bel po' di tempo) &lt;a href="https://bugs.launchpad.net/ubuntu/+source/gnuplot/+bug/239466/comments/9"&gt;questo workaround&lt;/a&gt;: andate in &lt;span style="font-weight:bold;"&gt;Sistema&lt;/span&gt; → &lt;span style="font-weight:bold;"&gt;Preferenze&lt;/span&gt; → &lt;span style="font-weight:bold;"&gt;Tecnologie assistive&lt;/span&gt; e deselezionate l'opzione "Abilitare le tecnologie assistive". Ovviamente questo può essere fatto solo se non si ha bisogno di questo tipo di supporto.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-6217718214746667023?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/6217718214746667023/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2010/02/risolto-gnuplot-va-in-crash-usando-wxt.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/6217718214746667023'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/6217718214746667023'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2010/02/risolto-gnuplot-va-in-crash-usando-wxt.html' title='[Risolto] Gnuplot va in crash usando wxt come terminale'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_YBnmJTR73Is/S3XCg0n_URI/AAAAAAAAAHY/4Rl8h9OfBJA/s72-c/Schermata-Preferenze+delle+tecnologie+assistive.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-1518284606101300234</id><published>2010-01-04T12:00:00.004+01:00</published><updated>2010-07-03T15:27:17.300+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='maxima'/><category scheme='http://www.blogger.com/atom/ns#' term='problema'/><category scheme='http://www.blogger.com/atom/ns#' term='matematica'/><title type='text'>Installare una versione funzionante di Maxima in Ubuntu</title><content type='html'>&lt;span style="font-style:italic;"&gt;&lt;span style="font-weight:bold;"&gt;Nota&lt;/span&gt;: il problema è ormai risolto dalla versione 10.04 di Ubuntu (Lucid Lynx) in poi. Comunque il repository di Launchpad segnalato permette di avere, in genere entro pochi giorni, l'ultima versione di Maxima e wxMaxima.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://commons.wikimedia.org/wiki/File:Maximalogo.png"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 179px; height: 169px;" src="http://upload.wikimedia.org/wikipedia/commons/f/f6/Maximalogo.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;Nelle ultime versioni di Ubuntu è disponibile nei repository ufficiali una versione non funzionante del programma di calcolo simbolico e numerico &lt;a href="http://maxima.sourceforge.net/"&gt;Maxima&lt;/a&gt;. Infatti, provando a usare Maxima vi potrebbe capitare ben presto di leggere questi messaggi di errore:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;(%i1) atan(x);&lt;br /&gt;Universal error handler called recursively (:ERROR NIL&lt;br /&gt;                                                 CONDITIONS::CLCS-UNIVERSAL-ERROR-HANDLER&lt;br /&gt;                                                 ""&lt;br /&gt;                                                 "Couldn't protect")&lt;br /&gt;Universal error handler called recursively (:ERROR NIL&lt;br /&gt;                                           CONDITIONS::CLCS-UNIVERSAL-ERROR-HANDLER&lt;br /&gt;                                           "" "Couldn't protect")&lt;br /&gt;Maxima encountered a Lisp error:&lt;br /&gt;&lt;br /&gt;Error in CONDITIONS::CLCS-UNIVERSAL-ERROR-HANDLER [or a callee]: Caught fatal error [memory may be damaged]&lt;br /&gt;&lt;br /&gt;Automatically continuing.&lt;br /&gt;To reenable the Lisp debugger set *debugger-hook* to nil.&lt;br /&gt;(%i2) atan(x);&lt;br /&gt;Segmentation fault&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Il problema, segnalato su Launchpad nel &lt;a href="https://bugs.launchpad.net/ubuntu/+source/maxima/+bug/303587"&gt;bug 303587&lt;/a&gt;, può essere risolto aggiungendo il repository di &lt;a href="https://launchpad.net/~blahota/+archive/wxmaxima"&gt;blahota&lt;/a&gt;. Per fare ciò è sufficiente dare nel terminale il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; font-family:courier new;" &gt;sudo add-apt-repository ppa:blahota/wxmaxima&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;e il repository sarà anche automaticamente autenticato senza bisogno di ulteriori interazioni.&lt;br /&gt;&lt;br /&gt;Questo &lt;span style="font-weight: bold;"&gt;non&lt;/span&gt; è un bug di Maxima ma solo del pacchetto precompilato presente nei repository di Ubuntu, quindi non segnalatelo sul sito di Maxima. Potreste anche provare a &lt;a href="https://help.ubuntu.com/community/Maxima#II.%20Compiling%20Your%20Own%20Maxima%20Package"&gt;compilare&lt;/a&gt; da voi Maxima. Se avete un account su Launchpad, non aprite altre segnalazioni ma piuttosto commentate (se ne avete bisogno) il bug segnalato prima e aggiungetevi nell'elenco delle persone &lt;a href="https://bugs.launchpad.net/ubuntu/+source/maxima/+bug/303587/+affectsmetoo"&gt;affette dal problema&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Nelle ultime versioni di wxMaxima viene usato `wxt' come terminale predefinito per gnuplot, che però va in crash. Un workaround per risolvere il problema può essere trovato &lt;a href="http://elubuntu.blogspot.com/2010/02/risolto-gnuplot-va-in-crash-usando-wxt.html"&gt;qui&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Aggiornamento del 15/02/2010&lt;/span&gt;: il &lt;a href="https://bugs.launchpad.net/ubuntu/+source/maxima/+bug/303587"&gt;bug 303587&lt;/a&gt; sembra che sia stato risolto (riguarda il pacchetto gcl), vedremo se in Lucid sarà presente una versione di Maxima funzionante.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-1518284606101300234?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/1518284606101300234/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2010/01/installare-una-versione-funzionante-di.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/1518284606101300234'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/1518284606101300234'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2010/01/installare-una-versione-funzionante-di.html' title='Installare una versione funzionante di Maxima in Ubuntu'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-3437874380589562263</id><published>2009-12-24T10:07:00.002+01:00</published><updated>2009-12-24T10:09:29.852+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='emacs'/><category scheme='http://www.blogger.com/atom/ns#' term='amministrazione'/><title type='text'>Aprire con Emacs un file protetto</title><content type='html'>Se avete l'editor di testo &lt;a href="http://www.gnu.org/software/emacs/"&gt;Emacs&lt;/a&gt; già aperto e avete necessità di modificare un file di testo protetto (per esempio uno dei file di configurazione presenti nel file system e di proprietà dell'utente root), non c'è bisogno di avviare una nuova sessione Emacs, magari da terminale con il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;gksudo emacs /percorso/del/file/protetto&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Esiste, infatti, una estensione chiamata &lt;a href="http://www.gnu.org/software/emacs/manual/html_mono/tramp.html"&gt;Tramp&lt;/a&gt; (inclusa di default nell'installazione delle ultime versioni di Emacs) che permette di editare file remoti ma anche file appartenenti a un altro utente. Per modificare un file protetto è sufficiente usare la combinazione di tasti &lt;span style="font-weight: bold;font-family:courier new;" &gt;C-x C-f&lt;/span&gt; (oppure per chi usa l'interfaccia grafica andare in File → Open file, che è la stessa cosa) e scrivere&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;/sudo::/percorso/del/file/protetto&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Quindi, se per esempio vogliamo aggiungere un nuovo repository nel file &lt;span style="font-weight: bold;font-family:courier new;" &gt;/etc/apt/sources.list&lt;/span&gt; dovremo scrivere&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;/sudo::/etc/apt/sources.list&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Verrà ovviamente richiesta di inserire la password nella &lt;a href="http://www.gnu.org/software/emacs/manual/html_mono/emacs.html.gz#Echo-Area"&gt;echo-area&lt;/a&gt;. Se {volete,avete bisogno di,preferite} usare &lt;span style="font-weight: bold;font-family:courier new;" &gt;su&lt;/span&gt; al posto di &lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo&lt;/span&gt;, dovete usare la sintassi&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;/su::/percorso/del/file/protetto&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Come accennato prima, Tramp permette anche di modificare file in remoto per esempio attraverso telnet o ssh. La procedura è sempre la stessa: dopo aver aperto un nuovo file con &lt;span style="font-weight: bold;font-family:courier new;" &gt;C-x C-f&lt;/span&gt; (oppure File → Open file) scrivete&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;/telnet:/percorso/del/file/remoto&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;oppure&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;/ssh:/percorso/del/file/remoto&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Per maggiori dettagli su questa estensione potete consultare il &lt;a href="http://www.gnu.org/software/emacs/manual/html_mono/tramp.html"&gt;manuale&lt;/a&gt; (in inglese).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-3437874380589562263?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/3437874380589562263/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2009/12/aprire-con-emacs-un-file-protetto.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/3437874380589562263'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/3437874380589562263'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2009/12/aprire-con-emacs-un-file-protetto.html' title='Aprire con Emacs un file protetto'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-286671408900267203</id><published>2009-12-05T19:00:00.007+01:00</published><updated>2010-07-25T15:57:37.744+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='compilazione'/><category scheme='http://www.blogger.com/atom/ns#' term='guida'/><category scheme='http://www.blogger.com/atom/ns#' term='problema'/><category scheme='http://www.blogger.com/atom/ns#' term='emacs'/><category scheme='http://www.blogger.com/atom/ns#' term='terminale'/><title type='text'>Autocompletamento in Emacs</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://commons.wikimedia.org/wiki/File:Emacs-logo.svg"&gt;&lt;img tooltip="linkalert-tip" style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 200px; height: 161px;" src="http://upload.wikimedia.org/wikipedia/commons/thumb/5/5f/Emacs-logo.svg/200px-Emacs-logo.svg.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;span style="font-style:italic;"&gt;&lt;span style="font-weight:bold;"&gt;Nota&lt;/span&gt;: Nel post &lt;a href="http://elubuntu.blogspot.com/2010/04/autocompletamento-in-emacs-2.html"&gt;Autocompletamento in Emacs (2)&lt;/a&gt; spiego come installare la nuova versione di questa estensione, che offre maggiori funzionalità rispetto a questa.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;In &lt;a href="http://www.gnu.org/software/emacs/"&gt;Emacs&lt;/a&gt; ("l'editor in tempo reale, estensibile, personalizzabile, auto-documentante e visuale") è disponibile una funzione di &lt;a href="http://it.wikipedia.org/wiki/Autocompletamento"&gt;autocompletamento&lt;/a&gt; con la combinazione &lt;span style="font-weight: bold;font-family:courier new;" &gt;M-/&lt;/span&gt; (ricordo che il tasto &lt;span style="font-weight: bold;font-family:courier new;" &gt;M&lt;/span&gt;, abbreviazione di Meta, corrisponde in genere al tasto Alt oppure Esc). Questa combinazione, però, è abbastanza scomoda da usare dal momento che in realtà bisogna premere 3 tasti ogni volta (ALT + SHIFT + 7, a quanto pare lo slash dell'eventuale tastierino numerico non vale), almeno sulle tastiere italiane, e quindi velocizza ben poco la scrittura di un testo o di un codice. Essendo Emacs un editor di testo estensibile, qualcuno ha ovviamente provveduto a creare un'estensione che permettesse di aumentare notevolmente l'utilità dell'autocompletamento. Esistono almeno 2 o 3 estensioni che fanno al nostro caso, io ne ho provata una in particolare, si chiama &lt;a href="http://github.com/m2ym/auto-complete"&gt;Auto Complete&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Come è possibile leggere dal file README visualizzato nella pagina principale del progetto, per installare questa estensione è sufficiente eseguire questi comandi in un terminale (la versione del programma probabilmente cambierà rispetto a quella presente in questo post, fate sempre riferimento al file README presente su quel sito):&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;git clone git://github.com/m2ym/auto-complete.git&lt;br /&gt;cd auto-complete&lt;br /&gt;git checkout v1.0&lt;br /&gt;emacs -L . -batch -f batch-byte-compile *.el&lt;br /&gt;cp *.el *.elc ~/.emacs.d/&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Per seguire questa strada è quindi necessario aver installato nel proprio sistema &lt;a href="http://git-scm.com/"&gt;Git&lt;/a&gt;, il sistema software di controllo versione distribuito realizzato da Linus Torvalds in persona. Il nome del pacchetto da installare in Ubuntu per ottenere questo programma (se non è già presente), però, non è &lt;span style="font-weight: bold;font-family:courier new;" &gt;git&lt;/span&gt;, come ci si potrebbe (e dovrebbe) aspettare ma &lt;span style="font-weight: bold;font-family:courier new;" &gt;&lt;a href="apt:git-core"&gt;git-core&lt;/a&gt;&lt;/span&gt;, perché &lt;span style="font-weight: bold;font-family:courier new;" &gt;git&lt;/span&gt; si riferisce a un altro programma. Quindi è sufficiente installare da &lt;a href="http://wiki.ubuntu-it.org/AmministrazioneSistema/Synaptic"&gt;Synaptic&lt;/a&gt; il pacchetto &lt;span style="font-weight: bold;font-family:courier new;" &gt;git-core&lt;/span&gt;, oppure digitare nel terminale il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo apt-get install git-core&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Dopo di ciò sarà possibile eseguire i comandi sopra elencati per poter installare l'estensione Auto Complete. Poi, come spiegato nel file &lt;span style="font-weight: bold;font-family:courier new;" &gt;auto-complete.el&lt;/span&gt;, bisogna aggiungere al file di configurazione &lt;span style="font-weight: bold;font-family:courier new;" &gt;~/.emacs&lt;/span&gt; (ricordo che la tilde &lt;span style="font-weight: bold;font-family:courier new;" &gt;~&lt;/span&gt; è un'abbreviazione per il percorso della cartella home dell'utente corrente e che file e cartelle che hanno il nome che inizia con il punto sono &lt;a href="http://elubuntu.blogspot.com/2009/06/file-e-cartelle-nascosti-nella-home.html"&gt;nascosti&lt;/a&gt;) queste righe:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;(require 'auto-complete)&lt;br /&gt;(require 'auto-complete-config)&lt;br /&gt;(global-auto-complete-mode t)&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Queste servono per caricare i file necessari e attivare automaticamente la modalità &lt;span style="font-weight: bold;font-family:courier new;" &gt;global-auto-complete&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Potrebbe presentarsi un problema nel caso in cui la cartella &lt;span style="font-weight: bold;font-family:courier new;" &gt;~/.emacs.d&lt;/span&gt; non sia presente nella variabile &lt;span style="font-weight: bold;font-family:courier new;" &gt;load-path&lt;/span&gt; di Emacs. Infatti con l'ultimo comando (&lt;span style="font-weight: bold;font-family:courier new;" &gt;cp *.el *.elc ~/.emacs.d/&lt;/span&gt;) avete copiato tutti i file con estensione &lt;span style="font-weight: bold;font-family:courier new;" &gt;.el&lt;/span&gt; e &lt;span style="font-weight: bold;font-family:courier new;" &gt;.elc&lt;/span&gt; nella cartella &lt;span style="font-weight: bold;font-family:courier new;" &gt;~/.emacs.d&lt;/span&gt;, ma in questo caso Emacs non sarebbe in grado di caricare questi file al suo avvio e comparirebbe un messaggio simile a questo:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;Warning (initialization): An error occurred while loading `/home/USERN_NAME/.emacs':&lt;br /&gt;&lt;br /&gt;File error: Cannot open load file, auto-complete&lt;br /&gt;&lt;br /&gt;To ensure normal operation, you should investigate and remove the&lt;br /&gt;cause of the error in your initialization file.  Start Emacs with&lt;br /&gt;the `--debug-init' option to view a complete error backtrace.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Per rimediare a ciò è sufficiente aggiungere la cartella in questione alla variabile &lt;span style="font-weight: bold;font-family:courier new;" &gt;load-path&lt;/span&gt; inserendo questa riga nel file &lt;span style="font-weight: bold;font-family:courier new;" &gt;~/.emacs&lt;/span&gt; (prima delle righe segnalate in precedenza, vedi &lt;a href="http://www.gnu.org/software/emacs/manual/html_mono/emacs.html.gz#Lisp-Libraries"&gt;qui&lt;/a&gt;):&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;(add-to-list 'load-path "~/.emacs.d")&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;A questo punto l'estensione sarà pronta per essere usata.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.emacswiki.org/emacs/AutoCompleteScreenshot"&gt;&lt;img tooltip="linkalert-tip" style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 414px; height: 309px;" src="http://www.emacswiki.org/emacs/?action=download;id=AutoCompleteScreenshot" alt="" border="0" /&gt;&lt;/a&gt;La procedura di aggiunta di una cartella alla variabile &lt;span style="font-weight: bold;font-family:courier new;" &gt;load-path&lt;/span&gt; potrebbe essere necessaria anche nel caso in cui si volessero aggiungere altre estensioni presenti in altre cartelle non "caricate" da Emacs. È comunque consigliabile mettere tutte le estensioni personalizzate in un'unica cartella, che può essere tranquillamente diversa da &lt;span style="font-weight: bold;font-family:courier new;" &gt;~/.emacs.d&lt;/span&gt; (in questo caso non dimenticatevi di copiare i file dell'estensione Auto Complete nella cartella opportuna!).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-286671408900267203?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/286671408900267203/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2009/12/autocompletamento-in-emacs.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/286671408900267203'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/286671408900267203'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2009/12/autocompletamento-in-emacs.html' title='Autocompletamento in Emacs'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-362928050150820050</id><published>2009-11-12T22:56:00.008+01:00</published><updated>2009-11-12T23:28:24.886+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='lxde'/><category scheme='http://www.blogger.com/atom/ns#' term='problema'/><category scheme='http://www.blogger.com/atom/ns#' term='pcmanfm'/><category scheme='http://www.blogger.com/atom/ns#' term='pacchetti'/><title type='text'>PCManFM non riconosce correttamente il tipo del file in Ubuntu Karmic</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_YBnmJTR73Is/SvyLgAXjrnI/AAAAAAAAAHI/6pvIPRrmhFc/s1600-h/pcmanfm-prima.png"&gt;&lt;img tooltip="linkalert-tip" style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 320px; height: 143px;" src="http://2.bp.blogspot.com/_YBnmJTR73Is/SvyLgAXjrnI/AAAAAAAAAHI/6pvIPRrmhFc/s320/pcmanfm-prima.png" alt="" id="BLOGGER_PHOTO_ID_5403347034908634738" border="0" /&gt;&lt;/a&gt;Chi sta usando la versione di Ubuntu 9.10 Karmic Koala con ambiente desktop &lt;a href="http://lxde.org/"&gt;LXDE&lt;/a&gt; probabilmente avrà notato che il &lt;a href="http://it.wikipedia.org/wiki/File_manager"&gt;file manager&lt;/a&gt; predefinito, chiamato &lt;a tooltip="linkalert-tip" href="http://pcmanfm.sourceforge.net/"&gt;PCManFM&lt;/a&gt; (e la cui versione in questo sistema è la 0.5.1+svn20090607-1), non riconosce correttamente il tipo dei file rendendolo praticamente inutilizzabile. Infatti tutti i file risultano avere come tipo &lt;span style="font-weight: bold;font-family:courier new;" &gt;unknown (application/octet-stream)&lt;/span&gt; e non è possibile selezionare un'applicazione che apra ciascun file (perché verrebbe utilizzata per aprire &lt;i&gt;tutti&lt;/i&gt; file e questo ovviamente non ci sta bene).&lt;br /&gt;&lt;br /&gt;Tutto ciò, &lt;a tooltip="linkalert-tip" href="http://bugs.archlinux.org/task/16760"&gt;a quanto pare&lt;/a&gt;, è dovuto alla nuova versione (0.70) del pacchetto &lt;span style="font-weight: bold;font-family:courier new;" &gt;shared-mime-info&lt;/span&gt;. Qualcuno è riuscito a risolvere il problema installando una vecchia versione del pacchetto &lt;span style="font-weight: bold;font-family:courier new;" &gt;shared-mime-info&lt;/span&gt; (per esempio la 0.60 presente in Jaunty) ma fortunatamente la nuova versione di PCManFM (la 0.5.2) risolve questo problema. Non ci resta quindi che installarla. Ci sono almeno 2 modi per farlo: compilare il sorgente (ma qui non verrà spiegato come farlo) o &lt;a tooltip="linkalert-tip" href="http://wiki.ubuntu-it.org/AmministrazioneSistema/InstallarePacchettiDebian"&gt;installare&lt;/a&gt; un bel pacchetto deb precompilato.&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_YBnmJTR73Is/SvyL8kPONwI/AAAAAAAAAHQ/h75PAV5PwTk/s1600-h/pcmanfm-dopo.png"&gt;&lt;img tooltip="linkalert-tip" style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 158px;" src="http://3.bp.blogspot.com/_YBnmJTR73Is/SvyL8kPONwI/AAAAAAAAAHQ/h75PAV5PwTk/s320/pcmanfm-dopo.png" alt="" id="BLOGGER_PHOTO_ID_5403347525573687042" border="0" /&gt;&lt;/a&gt; Ovviamente il pacchetto deb precompilato esiste già ed è presente negli archivi di Ubuntu Lucid Lynx (la versione 10.04 che uscirà il prossimo aprile). Per ottenerlo vi basta andare alla pagina &lt;a tooltip="linkalert-tip" href="http://packages.ubuntu.com/lucid/pcmanfm"&gt;http://packages.ubuntu.com/lucid/pcmanfm&lt;/a&gt;, selezionare (nella sezione &lt;b&gt;Download pcmanfm&lt;/b&gt;) l'architettura usata ("amd64" per il 64-bit, "i386" per il 32-bit) e infine scaricare il deb da uno dei mirror proposti.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-362928050150820050?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/362928050150820050/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2009/11/pcmanfm-non-riconosce-correttamente-il.html#comment-form' title='5 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/362928050150820050'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/362928050150820050'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2009/11/pcmanfm-non-riconosce-correttamente-il.html' title='PCManFM non riconosce correttamente il tipo del file in Ubuntu Karmic'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_YBnmJTR73Is/SvyLgAXjrnI/AAAAAAAAAHI/6pvIPRrmhFc/s72-c/pcmanfm-prima.png' height='72' width='72'/><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-8279071463608191678</id><published>2009-10-17T13:59:00.003+02:00</published><updated>2009-10-17T14:38:04.822+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='latex'/><category scheme='http://www.blogger.com/atom/ns#' term='guida'/><category scheme='http://www.blogger.com/atom/ns#' term='terminale'/><category scheme='http://www.blogger.com/atom/ns#' term='make'/><title type='text'>Guida introduttiva alla creazione di Makefile per compilare documenti LaTeX</title><content type='html'>Per scrivere i miei documenti &lt;a tooltip="linkalert-tip" href="http://it.wikipedia.org/wiki/LaTeX"&gt;LaTeX&lt;/a&gt; uso un semplice editor di testo e per compilare il documento finale uso il terminale. I comandi da eseguire per compilare un documento devono spesso essere ripetuti più volte e qualche volta trovo di difficile memorizzazione la giusta sequenza delle operazioni. Per semplificarmi la vita ho quindi deciso di rivolgermi a &lt;span style="font-weight: bold;font-family:courier new;" &gt;make&lt;/span&gt;:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;make&lt;/span&gt; è una utility usata con i sistemi operativi della famiglia UNIX che automatizza il processo di conversione dei file da una forma ad un'altra, risolvendo le dipendenze e invocando programmi esterni per il lavoro necessario. [...] Esso usa file chiamati "makefiles" per determinare il grafo delle dipendenze per un particolare output, e gli script necessari per la compilazione da passare alla shell.&lt;br /&gt;(&lt;a href="http://it.wikipedia.org/wiki/Make"&gt;http://it.wikipedia.org/wiki/Make&lt;/a&gt;)&lt;br /&gt;&lt;/div&gt;I &lt;span style="font-weight: bold;font-family:courier new;" &gt;Makefile&lt;/span&gt; sono estremamente diffusi nell'ambito della programmazione,  la maggioranza dei software open-source sfrutta i &lt;span style="font-weight: bold;font-family:courier new;" &gt;Makefile&lt;/span&gt; per  automatizzare la compilazione del programma. La mia idea di utilizzarli anche per compilare documenti LaTeX è tutt'altro che originale, su Internet, infatti, è possibile recuperare numeri sorgenti LaTeX con allegato un &lt;span style="font-weight: bold;font-family:courier new;" &gt;Makefile&lt;/span&gt;. Esistono dei programmi (essenzialmente degli script) che permettono di compilare correttamente un documento LaTeX con un solo comando, ma preferisco di gran lunga scrivermi da solo un &lt;span style="font-weight: bold;font-family:courier new;" &gt;Makefile&lt;/span&gt; perché è estremamente flessibile (con cambiamenti minimi può essere adattato a documenti diversi) e perché oltre alla compilazione automatizza anche altri processi come la conversione di immagini nei formati corretti per l'inclusione nel documento finale o la cancellazione dei file temporanei generati nella creazione di quest'ultimo.&lt;br /&gt;&lt;br /&gt;Su Internet si trovano numerose guide che spiegano come realizzare &lt;span style="font-weight: bold;font-family:courier new;" &gt;Makefile&lt;/span&gt; per compilare programmi, ma poco e niente si trova più specificamente per i documenti LaTeX (sebbene il funzionamento di &lt;span style="font-weight: bold;font-family:courier new;" &gt;make&lt;/span&gt; sia indipendente dall'utilizzo, suppongo che un utente LaTeX non abbia necessariamente le conoscenze necessarie per comprendere una guida rivolta a un programmatore). Per questo motivo già da un po' di tempo (come &lt;a href="http://www.guit.sssup.it/phpbb/viewtopic.php?t=6690"&gt;segnalai&lt;/a&gt; sul forum del Gruppo Utilizzatori Italiani di TeX) ho pubblicato una breve guida al riguardo. Il manuale, in formato PDF, lo potete trovare all'indirizzo &lt;a tooltip="linkalert-tip" href="http://elubuntu.altervista.org/LaTeX/Guide/make.pdf"&gt;http://elubuntu.altervista.org/LaTeX/Guide/make.pdf&lt;/a&gt;, mentre i sorgenti si trovano all'indirizzo &lt;a tooltip="linkalert-tip" href="http://elubuntu.altervista.org/LaTeX/Guide/make.tar.gz"&gt;http://elubuntu.altervista.org/LaTeX/Guide/make.tar.gz&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Mi sono concentrato più sui contenuti che sulla forma, infatti in una delle ultime riletture ho trovato svariati errori ortografici, se ne individuate altri segnalate pure. I &lt;span style="font-weight: bold;font-family:courier new;" &gt;Makefile&lt;/span&gt; che sono illustrati sono relativamente semplici (date le mie conoscenze basilari sull'argomento), ma se ne possono realizzare di molto molto più complessi. Anche in questo caso, se avete consigli, suggerimenti su come ampliare e migliorare la guida siete i benvenuti. La guida è rilasciata con licenza &lt;a tooltip="linkalert-tip" href="http://creativecommons.org/licenses/by/3.0/deed.it"&gt;CC-BY&lt;/a&gt;, quindi chiunque può modificarlo, adattarlo alle proprie esigenze, ampliarlo (mi farebbe piacere conoscere le modifiche apportate, specie se di ampliamento), a patto di citarne l'autore (cioè io :D).&lt;br /&gt;&lt;br /&gt;Avevo  intenzione di aggiungere alla guida delle brevi appendici di cui trovate i titoli (provvisori) nel file &lt;span style="font-weight: bold;font-family:courier new;" &gt;make.tex&lt;/span&gt; dell'archivio, per questo momento però non ho la possibilità di scrivere nulla a riguardo, se mi sarà possibile lo farò fra un po' di tempo.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-8279071463608191678?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/8279071463608191678/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2009/10/guida-introduttiva-alla-creazione-di.html#comment-form' title='2 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/8279071463608191678'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/8279071463608191678'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2009/10/guida-introduttiva-alla-creazione-di.html' title='Guida introduttiva alla creazione di Makefile per compilare documenti LaTeX'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-5686905633358138953</id><published>2009-09-13T15:55:00.003+02:00</published><updated>2009-09-13T16:18:02.837+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='synaptic'/><category scheme='http://www.blogger.com/atom/ns#' term='compilazione'/><category scheme='http://www.blogger.com/atom/ns#' term='pidgin'/><category scheme='http://www.blogger.com/atom/ns#' term='repository'/><category scheme='http://www.blogger.com/atom/ns#' term='pacchetti'/><category scheme='http://www.blogger.com/atom/ns#' term='terminale'/><title type='text'>Plugin per vedere i video di Youtube e Vimeo dentro Pidgin</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://pidgin-embeddedvideo.googlecode.com/svn/wiki/screenshots/vimeo.png"&gt;&lt;img tooltip="linkalert-tip" style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 156px; height: 224px;" src="http://pidgin-embeddedvideo.googlecode.com/svn/wiki/screenshots/vimeo.png" alt="" border="0" /&gt;&lt;/a&gt;Segnalo che poche ore fa è stato rilasciato un &lt;a href="http://code.google.com/p/pidgin-embeddedvideo/"&gt;plugin&lt;/a&gt; molto carino per Pidgin che permette di visualizzare i video presenti su Youtube e Vimeo direttamente all'interno delle finestre di conversazione quando qualcuno linka un video caricato su una di queste due piattaforme, senza bisogno quindi di aprire appositamente un browser. La procedura di installazione è riportata (in inglese) molto chiaramente &lt;a tooltip="linkalert-tip" href="http://code.google.com/p/pidgin-embeddedvideo/wiki/InstallationGuide"&gt;qui&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-5686905633358138953?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/5686905633358138953/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2009/09/plugin-per-vedere-i-video-di-youtube-e.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/5686905633358138953'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/5686905633358138953'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2009/09/plugin-per-vedere-i-video-di-youtube-e.html' title='Plugin per vedere i video di Youtube e Vimeo dentro Pidgin'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-3418649243845895764</id><published>2009-09-11T17:20:00.022+02:00</published><updated>2011-02-14T23:24:10.688+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rai'/><category scheme='http://www.blogger.com/atom/ns#' term='internet'/><category scheme='http://www.blogger.com/atom/ns#' term='script'/><title type='text'>Script per vedere canali RAI senza Firefox</title><content type='html'>&lt;a href="http://1.bp.blogspot.com/_YBnmJTR73Is/SqpzEkxi2UI/AAAAAAAAAG4/DP9zszGaMpU/s1600-h/Schermata-RAI.png" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5380239227275630914" src="http://1.bp.blogspot.com/_YBnmJTR73Is/SqpzEkxi2UI/AAAAAAAAAG4/DP9zszGaMpU/s320/Schermata-RAI.png" style="cursor: pointer; float: right; height: 240px; margin: 0pt 0pt 10px 10px; width: 172px;" tooltip="linkalert-tip" /&gt;&lt;/a&gt;In rete si trovano diversi metodi per Linux che permettono di vedere i canali RAI senza bisogno di dover usare il browser (con conseguente enorme risparmio di memoria). Uno dei migliori (se non il migliore in circolazione) è lo script che si può trovare all'indirizzo &lt;a href="http://www.slacky.eu/wikislack/index.php?title=Rai.tv_senza_silverlight" tooltip="linkalert-tip"&gt;http://www.slacky.eu/wikislack/index.php?title=Rai.tv_senza_silverlight&lt;/a&gt;. Ultimamente, però, ho problemi ad accedere al sito rai.tv e anche lo scaricamento dei canali effettuati dallo script è particolarmente lento (a volte non avviene proprio perché passano i 10 secondi di timeout impostati nello script. Una soluzione a questo problema è aumentare il timeout, per esempio portandolo a 20 o 30 secondi).&lt;br /&gt;&lt;br /&gt;Per evitare di dover aspettare ogni volta diversi secondi per poter avere l'elenco dei canali, allora, ho rimesso mano a un vecchio script che scrissi diversi mesi fa, poco dopo che fu aperto il sito rai.tv, per poter scegliere i canali da vedere ed ecco il risultato (&lt;i&gt;&lt;b&gt;Attenzione&lt;/b&gt;: i canali Rai 1, Rai 2 e Rai 3 potrebbero non funzionare&lt;/i&gt;):&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;&lt;span style="color: firebrick;"&gt;#&lt;/span&gt;&lt;span style="color: firebrick;"&gt;!/bin/&lt;/span&gt;&lt;span style="color: #a020f0;"&gt;bash&lt;/span&gt;&lt;span style="color: firebrick;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: firebrick;"&gt;#  &lt;/span&gt;&lt;span style="color: firebrick;"&gt;Ultimo aggiornamento: 26/11/2010&lt;br /&gt;&lt;/span&gt;&lt;span style="color: firebrick;"&gt;#&lt;/span&gt;&lt;span style="color: firebrick;"&gt;+ Per suggerimenti e consigli visita http://forum.ubuntu-it.org/index.php/topic,316995.0.html&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #a020f0;"&gt;function&lt;/span&gt; seleziona(){&lt;br /&gt;    &lt;span style="color: sienna;"&gt;canale&lt;/span&gt;=&lt;span style="color: magenta;"&gt;`zenity --list --height=400 --width=300 --title="Televisione" --text="Quale canale vuoi vedere?" --column="Canale" \&lt;br /&gt;    "=== TELEVISIONE ===" "Rai Uno" "Rai Due" "Rai Tre" "Rai 4" "Rai 5" "Rai News 24" "Rai Sport Più" "Rai Sport 2" \&lt;br /&gt;    "Rai Edu1" "Rai Storia" "RaiSat Extra" "RaiSat Premium" "RaiSat Cinema" "RaiSat YoYo" "Rai gulp" "Rai Scuola" "Rai Med" \&lt;br /&gt;    "EuroNews" "Sportitalia" "All Music" "RTL 102.5 (TV)" "NRK1" "NRK2" "NRK Rogaland" "Arcoiris TV" "Antena 1" \&lt;br /&gt;    "France24 English" "etvsatellite" "CBL Channel" "[3]CHANNEL ONE" "SAT 2000" "Ultimo Tg1" "Ultimo Tg2" "Ultimo Tg3" "=== RADIO ===" \&lt;br /&gt;    "Radio Uno" "Radio Due" "Radio Tre" "Isoradio" "RDS" "Radio 105" "RTL 102.5 (Radio)" "Radio Capital" "Radio Deejay" \&lt;br /&gt;    "Radio24" "Controradio" "Radio Popolare" "Radio Onda Rossa" "Radio onda d'Urto" "Radio Città Aperta" "Radio Blackout" \&lt;br /&gt;    "Radio Sherwood" "Virgin radio" "Virgin rock classico" "Virgin rock extreme" "Virgin rock alternative" "Virgin woodstock" \&lt;br /&gt;    "Virgin revolver" "LifeGate Radio" "Radio Flash"`&lt;/span&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #a020f0;"&gt;function&lt;/span&gt; play_rai(){&lt;br /&gt;    &lt;span style="color: #a020f0;"&gt;if&lt;/span&gt; [ ! -f ~/bin/rai.py ]; &lt;span style="color: #a020f0;"&gt;then&lt;/span&gt;&lt;br /&gt;        &lt;span style="color: #a020f0;"&gt;if&lt;/span&gt; [ ! -d ~/bin ]; &lt;span style="color: #a020f0;"&gt;then&lt;/span&gt;&lt;br /&gt;            mkdir ~/bin&lt;br /&gt;        &lt;span style="color: #a020f0;"&gt;fi&lt;/span&gt;&lt;br /&gt;        wget &lt;span style="color: #8b2252;"&gt;"http://elubuntu.altervista.org/rai.py"&lt;/span&gt; -O ~/bin/rai.py&lt;br /&gt;        chmod +x ~/bin/rai.py&lt;br /&gt;    &lt;span style="color: #a020f0;"&gt;fi&lt;/span&gt;&lt;br /&gt;    ~/bin/rai.py &lt;span style="color: #8b2252;"&gt;"$1"&lt;/span&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #a020f0;"&gt;function&lt;/span&gt; play(){&lt;br /&gt;    vlc &lt;span style="color: #8b2252;"&gt;"$1"&lt;/span&gt;&lt;br /&gt;}&lt;br /&gt;&lt;span style="color: #a020f0;"&gt;while&lt;/span&gt; true; &lt;span style="color: #a020f0;"&gt;do&lt;/span&gt;&lt;br /&gt;    seleziona&lt;br /&gt;    &lt;span style="color: #a020f0;"&gt;case&lt;/span&gt; $&lt;span style="color: sienna;"&gt;canale&lt;/span&gt;&lt;span style="color: #a020f0;"&gt; in&lt;/span&gt;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"=== TELEVISIONE ==="&lt;/span&gt; | &lt;span style="color: #8b2252;"&gt;"=== RADIO ==="&lt;/span&gt; ) seleziona ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"Rai Uno"&lt;/span&gt;) play_rai http://mediapolis.rai.it/relinker/relinkerServlet.htm?&lt;span style="color: sienna;"&gt;cont&lt;/span&gt;=180090 ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"Rai Due"&lt;/span&gt;) play_rai http://mediapolis.rai.it/relinker/relinkerServlet.htm?&lt;span style="color: sienna;"&gt;cont&lt;/span&gt;=180116 ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"Rai Tre"&lt;/span&gt;) play_rai http://mediapolis.rai.it/relinker/relinkerServlet.htm?&lt;span style="color: sienna;"&gt;cont&lt;/span&gt;=180117 ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"Rai 4"&lt;/span&gt;) play_rai http://mediapolis.rai.it/relinker/relinkerServlet.htm?&lt;span style="color: sienna;"&gt;cont&lt;/span&gt;=75708 ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"Rai 5"&lt;/span&gt;) play_rai http://mediapolis.rai.it/relinker/relinkerServlet.htm?&lt;span style="color: sienna;"&gt;cont&lt;/span&gt;=72382 ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"Rai News 24"&lt;/span&gt;) play_rai http://mediapolis.rai.it/relinker/relinkerServlet.htm?&lt;span style="color: sienna;"&gt;cont&lt;/span&gt;=1 ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"Rai Sport Più"&lt;/span&gt;) play_rai http://mediapolis.rai.it/relinker/relinkerServlet.htm?&lt;span style="color: sienna;"&gt;cont&lt;/span&gt;=4145 ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"Rai Sport 2"&lt;/span&gt;) play_rai http://mediapolis.rai.it/relinker/relinkerServlet.htm?&lt;span style="color: sienna;"&gt;cont&lt;/span&gt;=179975 ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"Rai Edu1"&lt;/span&gt;) play_rai http://mediapolis.rai.it/relinker/relinkerServlet.htm?&lt;span style="color: sienna;"&gt;cont&lt;/span&gt;=24268 ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"Rai Storia"&lt;/span&gt;) play_rai http://mediapolis.rai.it/relinker/relinkerServlet.htm?&lt;span style="color: sienna;"&gt;cont&lt;/span&gt;=24269 ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"RaiSat Extra"&lt;/span&gt;) play_rai http://mediapolis.rai.it/relinker/relinkerServlet.htm?&lt;span style="color: sienna;"&gt;cont&lt;/span&gt;=72382 ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"RaiSat Premium"&lt;/span&gt;) play_rai http://mediapolis.rai.it/relinker/relinkerServlet.htm?&lt;span style="color: sienna;"&gt;cont&lt;/span&gt;=72916 ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"RaiSat Cinema"&lt;/span&gt;) play_rai http://mediapolis.rai.it/relinker/relinkerServlet.htm?&lt;span style="color: sienna;"&gt;cont&lt;/span&gt;=72381 ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"RaiSat YoYo"&lt;/span&gt;) play_rai http://mediapolis.rai.it/relinker/relinkerServlet.htm?&lt;span style="color: sienna;"&gt;cont&lt;/span&gt;=72918 ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"Rai gulp"&lt;/span&gt;) play_rai http://mediapolis.rai.it/relinker/relinkerServlet.htm?&lt;span style="color: sienna;"&gt;cont&lt;/span&gt;=4119 ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"Rai Scuola"&lt;/span&gt;) play_rai http://mediapolis.rai.it/relinker/relinkerServlet.htm?&lt;span style="color: sienna;"&gt;cont&lt;/span&gt;=24268 ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"Rai Med"&lt;/span&gt;) play_rai http://mediapolis.rai.it/relinker/relinkerServlet.htm?&lt;span style="color: sienna;"&gt;cont&lt;/span&gt;=87127 ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"EuroNews"&lt;/span&gt;) play_rai http://mediapolis.rai.it/relinker/relinkerServlet.htm?&lt;span style="color: sienna;"&gt;cont&lt;/span&gt;=113784 ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"Sportitalia"&lt;/span&gt;) play mms://mms.cdn-tiscali.com/sportitalia ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"All Music"&lt;/span&gt;) play mms://live.mediaserver.kataweb.it/retea?&lt;span style="color: sienna;"&gt;MSWMExt&lt;/span&gt;=.asf ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"RTL 102.5 (TV)"&lt;/span&gt;) play mms://151.1.245.36/rtl102.5vs ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"NRK1"&lt;/span&gt;) play mms://mms-icanal-live.online.no/nrk_tv_webvid03_l ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"NRK2"&lt;/span&gt;) play mms://mms-icanal-live.online.no/nrk_tv_webvid05_h ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"NRK Rogaland"&lt;/span&gt;) play mms://straumV.nrk.no/nrk_tv_rogaland_247_mbr ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"Arcoiris TV"&lt;/span&gt;) play mms://193.41.7.40/vive-adsl ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"Antena 1"&lt;/span&gt;) play mms://81.196.2.232/pp1 ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"France24 English"&lt;/span&gt;) play mms://stream1.france24.yacast.net/f24_liveen ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"etvsatellite"&lt;/span&gt;) play mms://streaming.e-tv.it/etvsatellite ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"CBL Channel"&lt;/span&gt;) play mms://151.1.245.71/cblfilm-live ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"[3]CHANNEL ONE"&lt;/span&gt;) play mms://84.233.254.2/3Channel ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"SAT 2000"&lt;/span&gt;) play mms://89.119.94.130/Sat2000 ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"Ultimo Tg1"&lt;/span&gt;) play http://link.rai.it/x/vod/ue/wmx/ultimo_tg1.asx ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"Ultimo Tg2"&lt;/span&gt;) play http://link.rai.it/x/vod/ue/wmx/ultimo_tg2.asx ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"Ultimo Tg3"&lt;/span&gt;) play http://link.rai.it/x/vod/ue/wmx/ultimo_tg3.asx ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"Radio Uno"&lt;/span&gt;) play rtsp://live.media.rai.it/broadcast/radiouno.rm ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"Radio Due"&lt;/span&gt;) play rtsp://live.media.rai.it/broadcast/radiodue.rm ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"Radio Tre"&lt;/span&gt;) play rtsp://live.media.rai.it/broadcast/radiotre.rm ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"Isoradio"&lt;/span&gt;) play rtsp://live.media.rai.it/broadcast/isoradio.rm ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"RDS"&lt;/span&gt;) play mms://fastreal.fastweb.it/RDS ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"Radio 105"&lt;/span&gt;) play mms://151.1.245.6/1 ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"RTL 102.5 (Radio)"&lt;/span&gt;) play mms://151.1.245.36/rtl102.5hq/ ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"Radio Capital"&lt;/span&gt;) play mms://live.mediaserver.kataweb.it/capital?&lt;span style="color: sienna;"&gt;MSWMExt&lt;/span&gt;=.asf ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"Radio Deejay"&lt;/span&gt;) play mms://live.mediaserver.kataweb.it/radiodeejay?&lt;span style="color: sienna;"&gt;MSWMext&lt;/span&gt;=.asf ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"Radio24"&lt;/span&gt;) play mms://62.196.2.90/Radio24 ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"Controradio"&lt;/span&gt;) play http://streaming.controradio.emmi.it:8190/ ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"Radio Popolare"&lt;/span&gt;) play http://www.radiopopolare.it/liveU.asx ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"Radio Onda Rossa"&lt;/span&gt;) play http://radio.dyne.org:8000/ondarossa.mp3 ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"Radio onda d'Urto"&lt;/span&gt;) play http://www.radiondadurto.org:8000/listen.pls ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"Radio Città Aperta"&lt;/span&gt;) play mms://stream.greynetweb.it/rca?&lt;span style="color: sienna;"&gt;MSWMExt&lt;/span&gt;=.asf ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"Radio Blackout"&lt;/span&gt;) play http://stream.teknusi.org:8000/blackout.mp3 ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"Radio Sherwood"&lt;/span&gt;) play http://62.101.68.185:8000/sherwood.ogg ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"Virgin radio"&lt;/span&gt;) play mmsh://151.1.245.1/20?&lt;span style="color: sienna;"&gt;MSWMExt&lt;/span&gt;=.asf ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"Virgin rock classico"&lt;/span&gt;) play mms://151.1.245.1/24 ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"Virgin rock extreme"&lt;/span&gt;) play mms://151.1.245.1/25 ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"Virgin rock alternative"&lt;/span&gt;) play mms://151.1.245.1/36 ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"Virgin woodstock"&lt;/span&gt;) play mms://151.1.245.1/13 ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"Virgin revolver"&lt;/span&gt;) play mms://151.1.245.1/34 ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"LifeGate Radio"&lt;/span&gt;) play mmsh://onair8.xdevel.com/Lifegate?&lt;span style="color: sienna;"&gt;MSWMExt&lt;/span&gt;=.asf ;;&lt;br /&gt;        &lt;span style="color: #8b2252;"&gt;"Radio Flash"&lt;/span&gt;) play http://stream5.top-ix.it:8000/radioflash.m3u ;;&lt;br /&gt;        *) &lt;span style="color: #a020f0;"&gt;exit&lt;/span&gt; 0 ;;&lt;br /&gt;    &lt;span style="color: #a020f0;"&gt;esac&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #a020f0;"&gt;done&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;(Lo trovate anche qui: &lt;a href="http://forum.ubuntu-it.org/index.php/topic,316995.0.html"&gt;http://forum.ubuntu-it.org/index.php/topic,316995.0.html&lt;/a&gt;) Gli unici pacchetti richiesti per l'utilizzo del programma sono &lt;code&gt;zenity&lt;/code&gt; (utilizzato per creare la semplice interfaccia di scelta del programma) e &lt;code&gt;vlc&lt;/code&gt; (potente player multimediale che permette di modificare l'user agent HTTP, necessario per accedere ai video presenti su rai.tv). Per visualizzare i canali della RAI inoltre è necessario installare &lt;code&gt;python3&lt;/code&gt;.&lt;br /&gt;&lt;br /&gt;Per utilizzarlo basta copiare lo script in un file con un &lt;a href="http://wiki.ubuntu-it.org/Ufficio/EditorDiTesto"&gt;editor di testo&lt;/a&gt; a piacere, salvare il file chiamandolo, per esempio, &lt;code&gt;rai&lt;/code&gt;, &lt;a href="http://elubuntu.blogspot.com/2009/09/rendere-eseguibile-un-file.html"&gt;renderlo eseguibile&lt;/a&gt; e posizionarlo nella cartella &lt;code&gt;~/bin&lt;/code&gt; (ricordo che la tilde &lt;code&gt;~&lt;/code&gt; è un'abbreviazione della cartella home dell'utente corrente), creandola se eventualmente non esiste. All'avvio successivo del computer dovrebbe essere sufficiente dare nel terminale il comando&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;rai&lt;br /&gt;&lt;/pre&gt;(o il nome che avete dato allo script) per poter aprire la finestra di scelta del canale da visualizzare. Ovviamente è anche possibile creare un lanciatore a questo comando per avviarlo ancora più semplicemente.&lt;br /&gt;&lt;br /&gt;Questo script permette solo di vedere le dirette elencate nella finestra che vi apparirà, lo script presente su slacky.eu, invece, offre la possibilità di riprodurre anche tanti altri video presenti sul sito della RAI.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Aggiornamento&lt;/span&gt;: su suggerimento di &lt;a href="http://forum.ubuntu-it.org/index.php/topic,289535.msg2403519.html#msg2403519"&gt;mario000&lt;/a&gt; ho aggiunto anche il link allo streaming di Sportitalia. Se avete suggerimenti per altri canali da aggiungere (anche radio se volete), non esitate a segnalare (meglio se forniti di link allo streaming :-) ). D'ora in poi non credo che scriverò tutte le modifiche apportate allo script, se non modifiche importanti.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-3418649243845895764?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/3418649243845895764/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2009/09/script-per-vedere-canali-rai-senza.html#comment-form' title='47 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/3418649243845895764'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/3418649243845895764'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2009/09/script-per-vedere-canali-rai-senza.html' title='Script per vedere canali RAI senza Firefox'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_YBnmJTR73Is/SqpzEkxi2UI/AAAAAAAAAG4/DP9zszGaMpU/s72-c/Schermata-RAI.png' height='72' width='72'/><thr:total>47</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-3445396107530858501</id><published>2009-09-01T20:18:00.006+02:00</published><updated>2011-02-14T23:41:02.102+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='script nautilus'/><category scheme='http://www.blogger.com/atom/ns#' term='amministrazione'/><category scheme='http://www.blogger.com/atom/ns#' term='terminale'/><category scheme='http://www.blogger.com/atom/ns#' term='gnome'/><category scheme='http://www.blogger.com/atom/ns#' term='nautilus'/><title type='text'>Rendere eseguibile un file</title><content type='html'>Affinché un file possa essere eseguito è necessario che abbia impostato il &lt;a href="http://wiki.ubuntu-it.org/AmministrazioneSistema/PermessiFile"&gt;permesso di esecuzione&lt;/a&gt;. Infatti, provando a eseguire da terminale un file (sia esso un &lt;a href="http://it.wikipedia.org/wiki/File_eseguibile" tooltip="linkalert-tip"&gt;eseguibile&lt;/a&gt;, uno &lt;a href="http://it.wikipedia.org/wiki/Script"&gt;script&lt;/a&gt; o altro) che non ha il permesso di esecuzione riceverete il messaggio di errore:&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;bash: ./nomefile: Permesso negato&lt;br /&gt;&lt;/pre&gt;(dove &lt;code&gt;nomefile&lt;/code&gt; rappresenta il nome del file che si è provato a eseguire).&lt;br /&gt;&lt;br /&gt;Per impostare il permesso di esecuzione da terminale bisogna utilizzare il comando &lt;code&gt;chmod&lt;/code&gt;. La sintassi del comando è&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;chmod [OPZIONI] permessi &lt;i&gt;nomefile&lt;/i&gt;&lt;br /&gt;&lt;/pre&gt;Per quello che vi interessa riguardo al rendere eseguibile un file il comando da utilizzare è&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;chmod +x &lt;i&gt;nomefile&lt;/i&gt;&lt;br /&gt;&lt;/pre&gt;Il file da rendere eseguibile può essere specificato indicandone il percorso assoluto o quello relativo, come preferite. Per tutti gli altri usi e opzioni di &lt;code&gt;chmod&lt;/code&gt; potete consultare il &lt;a href="http://manpages.ubuntu.com/manpages/maverick/en/man1/chmod.1.html"&gt;manuale&lt;/a&gt; utilizzando il solito comando &lt;code&gt;man chmod&lt;/code&gt;.&lt;br /&gt;&lt;br /&gt;Ovviamente è possibile rendere eseguibile un file utilizzando l'interfaccia grafica. Se usate Nautilus, il file manager predefinito di GNOME, bisogna fare clic con il tasto destro sull'icona di un file, scegliere &lt;span style="font-weight: bold;"&gt;Proprietà&lt;/span&gt;, nella scheda &lt;span style="font-weight: bold;"&gt;Permessi&lt;/span&gt; si deve quindi mettere la spunta a &lt;span style="font-weight: bold;"&gt;Consentire l'esecuzione del file come programma&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;È possibile anche utilizzare il seguente breve &lt;a href="http://wiki.ubuntu-it.org/AmbienteGrafico/Gnome/ScriptNautilus"&gt;script di Nautilus&lt;/a&gt; che ho scritto per rendere eseguibile anche più file contemporaneamente con un solo clic:&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;&lt;span style="color: #b22222;"&gt;#&lt;/span&gt;&lt;span style="color: #b22222;"&gt;!/bin/&lt;/span&gt;&lt;span style="color: #a020f0;"&gt;bash&lt;/span&gt;&lt;span style="color: #b22222;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #a020f0;"&gt;for&lt;/span&gt; arg; &lt;span style="color: #a020f0;"&gt;do&lt;/span&gt;&lt;br /&gt;    chmod u+x -- &lt;span style="color: #8b2252;"&gt;"$arg"&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #a020f0;"&gt;done&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_YBnmJTR73Is/Sp2AuKQclVI/AAAAAAAAAGw/tbe0lY8wCY0/s1600-h/Schermata-luke+-+Esplorazione+file.png" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5376595060665914706" src="http://4.bp.blogspot.com/_YBnmJTR73Is/Sp2AuKQclVI/AAAAAAAAAGw/tbe0lY8wCY0/s400/Schermata-luke+-+Esplorazione+file.png" style="cursor: pointer; float: left; height: 309px; margin: 0pt 10px 10px 0pt; width: 400px;" /&gt;&lt;/a&gt;Per utilizzare lo script, aprite un file vuoto con un &lt;a href="http://wiki.ubuntu-it.org/Ufficio/EditorDiTesto" target="_blank"&gt;editor di testo&lt;/a&gt; (come &lt;code&gt;&lt;a href="http://wiki.ubuntu-it.org/Ufficio/EditorDiTesto#line-18" target="_blank"&gt;gedit&lt;/a&gt;&lt;/code&gt;), copiate lo script nell'editor e salvatelo nella cartella &lt;code&gt;~/.gnome2/nautilus-scripts&lt;/code&gt; (ricordo che la tilde &lt;code&gt;~&lt;/code&gt; è un'abbreviazione della cartella home dell'utente corrente) chiamandolo, per esempio, &lt;span style="font-weight: bold;"&gt;Rendi eseguibile&lt;/span&gt;. Rendete quindi eseguibile lo script in uno dei modi descritti in precedenza. In questo modo, selezionando e facendo clic con il tasto destro sui file a cui vorrete assegnare il permesso di esecuzione, vi basterà fare clic su &lt;span style="font-weight: bold;"&gt;Script&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;Rendi eseguibile&lt;/span&gt; (o il nome che avete dato allo script).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-3445396107530858501?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/3445396107530858501/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2009/09/rendere-eseguibile-un-file.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/3445396107530858501'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/3445396107530858501'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2009/09/rendere-eseguibile-un-file.html' title='Rendere eseguibile un file'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_YBnmJTR73Is/Sp2AuKQclVI/AAAAAAAAAGw/tbe0lY8wCY0/s72-c/Schermata-luke+-+Esplorazione+file.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-5598701891670660442</id><published>2009-08-31T14:57:00.006+02:00</published><updated>2009-08-31T17:46:54.449+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='amministrazione'/><category scheme='http://www.blogger.com/atom/ns#' term='gnome'/><title type='text'>Rimuovere conferma per il termine sessione, riavvio e arresto del computer</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_YBnmJTR73Is/SpvMusUuqYI/AAAAAAAAAGg/8idfys5Hm6A/s1600-h/Schermata-Arresta.png"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 344px; height: 130px;" src="http://2.bp.blogspot.com/_YBnmJTR73Is/SpvMusUuqYI/AAAAAAAAAGg/8idfys5Hm6A/s400/Schermata-Arresta.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5376115682740971906" /&gt;&lt;/a&gt;Probabilmente dalla versione 9.04 di Ubuntu avrete notato che facendo clic sulle opzioni &lt;span style="font-weight:bold;"&gt;Termina sessione...&lt;/span&gt;, &lt;span style="font-weight:bold;"&gt;Sospendi&lt;/span&gt;, &lt;span style="font-weight:bold;"&gt;Iberna&lt;/span&gt;, &lt;span style="font-weight:bold;"&gt;Riavvia...&lt;/span&gt; e &lt;span style="font-weight:bold;"&gt;Arresta...&lt;/span&gt; dall'&lt;span style="font-weight:bold;"&gt;Applet Selettore rapido utente&lt;/span&gt; (l'applet che si trova in genere sull'estrema destra del pannello superiore in GNOME) viene chiesta una conferma.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_YBnmJTR73Is/SpvLG32fIXI/AAAAAAAAAGY/Ypn64BMAmzI/s1600-h/Schermata-Preferenze+di+Selettore+utente.png"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 400px; height: 249px;" src="http://4.bp.blogspot.com/_YBnmJTR73Is/SpvLG32fIXI/AAAAAAAAAGY/Ypn64BMAmzI/s400/Schermata-Preferenze+di+Selettore+utente.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5376113899128955250" /&gt;&lt;/a&gt;Se si vuole modificare questo comportamento è sufficiente fare clic con il tasto destro sull'applet, scegliere &lt;span style="font-weight:bold;"&gt;Preferenze&lt;/span&gt; e togliere la spunta all'opzione &lt;span style="font-weight:bold;"&gt;Confermare il termine sessione, riavvio e arresto del computer&lt;/span&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-5598701891670660442?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/5598701891670660442/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2009/08/rimuovere-conferma-per-il-termine.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/5598701891670660442'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/5598701891670660442'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2009/08/rimuovere-conferma-per-il-termine.html' title='Rimuovere conferma per il termine sessione, riavvio e arresto del computer'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_YBnmJTR73Is/SpvMusUuqYI/AAAAAAAAAGg/8idfys5Hm6A/s72-c/Schermata-Arresta.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-2767650056086007442</id><published>2009-08-30T23:02:00.009+02:00</published><updated>2010-07-03T15:33:35.679+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='amministrazione'/><category scheme='http://www.blogger.com/atom/ns#' term='gnome'/><category scheme='http://www.blogger.com/atom/ns#' term='nautilus'/><title type='text'>Aggiungere colonne con tag ID3 e informazioni Exif in Nautilus</title><content type='html'>Per sopperire alla mancanza in &lt;a tooltip="linkalert-tip" href="http://it.wikipedia.org/wiki/Nautilus_%28software%29"&gt;Nautilus&lt;/a&gt; (il &lt;a tooltip="linkalert-tip" href="http://it.wikipedia.org/wiki/File_manager"&gt;file manager&lt;/a&gt; predefinito di &lt;a tooltip="linkalert-tip" href="http://it.wikipedia.org/wiki/GNOME"&gt;GNOME&lt;/a&gt;) delle colonne con i &lt;a href="http://it.wikipedia.org/wiki/ID3_tag"&gt;tag ID3&lt;/a&gt; (per i file musicali mp3) e le informazioni &lt;a tooltip="linkalert-tip" href="http://it.wikipedia.org/wiki/Exchangeable_image_file_format"&gt;Exif&lt;/a&gt; (per le fotografie scattate dalle fotocamere digitali), è possibile utilizzare lo script scritto in python che potete trovare sul forum internazionale di Ubuntu all'indirizzo &lt;a href="http://ubuntuforums.org/showthread.php?p=6643803#post6643803"&gt;questo indirizzo&lt;/a&gt;. Per scaricare direttamente lo script potete fare clic &lt;a href="http://bazaar.launchpad.net/~team1/+junk/devel/download/head:/bscv2.py-20100626134041-qcgfprsb49x7mnzd-1/bsc-v2.py"&gt;qui&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Non so se esistano soluzioni migliori, comunque questo metodo è abbastanza efficiente. Come potete leggere dai primi &lt;a href="http://it.wikipedia.org/wiki/Commento_%28informatica%29"&gt;commenti&lt;/a&gt; all'interno dello script, per utilizzarlo è necessario installare i pacchetti &lt;a href="apt:python-nautilus"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;python-nautilus&lt;/span&gt;&lt;/a&gt;, &lt;a href="apt:python-mutagen"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;python-mutagen&lt;/span&gt;&lt;/a&gt; e &lt;a href="apt:python-pyexiv2"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;python-pyexiv2&lt;/span&gt;&lt;/a&gt;. Questi pacchetti possono essere facilmente installati da &lt;a href="http://wiki.ubuntu-it.org/AmministrazioneSistema/Synaptic"&gt;Synaptic&lt;/a&gt;, oppure da terminale con il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo apt-get install python-nautilus python-mutagen python-pyexiv2&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Dopo di ciò bisogna spostare lo script all'interno della cartella &lt;span style="font-weight: bold;font-family:courier new;" &gt;~/.nautilus/python-extensions&lt;/span&gt; (ricordo che la tilde &lt;span style="font-weight: bold;font-family:courier new;" &gt;~&lt;/span&gt; è un'abbreviazione del percorso della home dell'utente corrente e che le cartelle che hanno il nome che inizia con il punto sono &lt;a href="http://elubuntu.blogspot.com/2009/06/file-e-cartelle-nascosti-nella-home.html"&gt;cartelle nascoste&lt;/a&gt;, bisogna quindi premere [ &lt;span style="font-weight: bold;"&gt;CTRL&lt;/span&gt; ] + [ &lt;span style="font-weight: bold;"&gt;H&lt;/span&gt; ] per visualizzarle). Se la cartella non esiste bisogna ovviamente crearla (la cartella &lt;span style="font-weight: bold;font-family:courier new;" &gt;~/.nautilus&lt;/span&gt; dovrebbe comunque esistere già, sarà al massimo necessario creare la sottocartella). Alternativamente, lo script potrebbe anche essere posto in &lt;span style="font-weight: bold;font-family:courier new;" &gt;/usr/lib/nautilus/extensions-2.0/python/&lt;/span&gt;, è necessario però agire da &lt;a href="http://wiki.ubuntu-it.org/AmministrazioneSistema/Sudo"&gt;super utente&lt;/a&gt; per posizionare lo script in quella cartella.&lt;br /&gt;&lt;br /&gt;Prima di poter utilizzare lo script bisogna &lt;a href="http://elubuntu.blogspot.com/2009/09/rendere-eseguibile-un-file.html"&gt;renderlo eseguibile&lt;/a&gt;: fate clic con il tasto destro sull'icona dello script, fate clic su &lt;span style="font-weight: bold;"&gt;Proprietà&lt;/span&gt; e nella scheda &lt;span style="font-weight: bold;"&gt;Permessi&lt;/span&gt; della finestra che si aprirà mettete la spunta a &lt;span style="font-weight: bold;"&gt;Consentire l'esecuzione del file come programma&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_YBnmJTR73Is/SpvvDB1sULI/AAAAAAAAAGo/sQijc4wMbjE/s1600-h/Schermata-Musica+-+Esplorazione+file.png"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 400px; height: 229px;" src="http://2.bp.blogspot.com/_YBnmJTR73Is/SpvvDB1sULI/AAAAAAAAAGo/sQijc4wMbjE/s400/Schermata-Musica+-+Esplorazione+file.png" alt="" id="BLOGGER_PHOTO_ID_5376153415509102770" border="0" /&gt;&lt;/a&gt;Per concludere riavviate Nautilus (riavviando il computer oppure terminando la sessione corrente oppure digitando il comando &lt;span style="font-weight: bold;font-family:courier new;" &gt;killall nautilus&lt;/span&gt; (quest'ultima opzione personalmente la preferisco di meno)). Al successivo avvio di Nautilus, utilizzando la vista a elenco, potrete aggiungere le colonne contenti le informazioni che vi servono (&lt;span style="font-weight: bold;"&gt;Visualizza&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;Colonne visibili&lt;/span&gt;). I nomi delle colonne sono in inglese, ma si capisce facilmente cosa c'è scritto (modificando un poco lo script si potrebbero tradurre i nomi delle colonne in italiano, ma non conoscendo il python non sono in grado di dire cosa va corretto).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-2767650056086007442?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/2767650056086007442/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2009/08/aggiungere-colonne-con-tag-id3-e.html#comment-form' title='8 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/2767650056086007442'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/2767650056086007442'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2009/08/aggiungere-colonne-con-tag-id3-e.html' title='Aggiungere colonne con tag ID3 e informazioni Exif in Nautilus'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_YBnmJTR73Is/SpvvDB1sULI/AAAAAAAAAGo/sQijc4wMbjE/s72-c/Schermata-Musica+-+Esplorazione+file.png' height='72' width='72'/><thr:total>8</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-3977148827701957843</id><published>2009-08-27T19:17:00.005+02:00</published><updated>2009-08-30T23:57:53.922+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='scheda video'/><category scheme='http://www.blogger.com/atom/ns#' term='tastiera'/><category scheme='http://www.blogger.com/atom/ns#' term='hardware'/><category scheme='http://www.blogger.com/atom/ns#' term='pacchetti'/><category scheme='http://www.blogger.com/atom/ns#' term='amministrazione'/><category scheme='http://www.blogger.com/atom/ns#' term='terminale'/><title type='text'>Ottenere informazioni sull'hardware del sistema</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://commons.wikimedia.org/wiki/File:Computer.svg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 200px; height: 200px;" src="http://commons.wikimedia.org/w/thumb.php?f=Computer.svg&amp;width=200px" border="0" alt="" /&gt;&lt;/a&gt;Per ottenere informazioni abbastanza dettagliata sull'hardware presente sul proprio computer si può utilizzare il comando da terminale&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo lshw&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;(è necessario lanciare il comando con i &lt;a href="http://wiki.ubuntu-it.org/AmministrazioneSistema/Sudo"&gt;diritti da superutente&lt;/a&gt; altrimenti si otterrebbero delle informazioni parziali.) &lt;span style="font-weight: bold;font-family:courier new;" &gt;lshw&lt;/span&gt; dovrebbe essere già installato nel vostro sistema operativo Ubuntu, in caso contrario è sufficiente installare il pacchetto omonimo da &lt;a href="http://wiki.ubuntu-it.org/AmministrazioneSistema/Synaptic"&gt;Synaptic&lt;/a&gt; o da terminale con il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo apt-get install lshw&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Questo programma attualmente supporta DMI (solo x86 e IA-64), OpenFirmware device tree (solo PowerPC), PCI/AGP, CPUID (x86), IDE/ATA/ATAPI, PCMCIA (testato solo su x86), SCSI e USB, non vengono però rilevati dispositivi Firewire(IEEE1394), non tutte le architetture supportate da GNU/Linux sono supportate da &lt;span style="font-weight: bold;font-family:courier new;" &gt;lshw&lt;/span&gt; e le interfacce "Virtual" SCSI usate per l'emulazione SCSI su IDE non sono ancora riportate correttamente (tutte queste informazioni riguardo a &lt;span style="font-weight: bold;font-family:courier new;" &gt;lshw&lt;/span&gt; che ho snocciolato capendoci più o meno qualcosa le potete ottenere semplicemente leggendo il manuale di &lt;span style="font-weight: bold;font-family:courier new;" &gt;lshw&lt;/span&gt; dando il comando &lt;a href="http://manpages.ubuntu.com/manpages/jaunty/en/man1/lshw.1.html"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;man lshw&lt;/span&gt;&lt;/a&gt; nel terminale).&lt;br /&gt;&lt;br /&gt;Oltre a questo comando è possibile utilizzare i comandi&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;lsusb&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;e&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;lspci&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;per ottenere informazioni sui dispositivi connessi rispettivamente a porte &lt;a href="http://it.wikipedia.org/wiki/Universal_Serial_Bus"&gt;USB&lt;/a&gt; e &lt;a href="http://it.wikipedia.org/wiki/Peripheral_Component_Interconnect"&gt;PCI&lt;/a&gt;. L'ultimo comando in particolare può essere utilizzato, generalmente, per conoscere il modello della propria scheda video. Se l'output del comando risulta molto lungo si può restringere l'output alle sole stringhe contenenti la parola &lt;a href="http://it.wikipedia.org/wiki/Video_Graphics_Array"&gt;VGA&lt;/a&gt; in questo modo:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;lspci | grep VGA&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;(è, per esempio, necessario conoscere il modello della propria scheda video per &lt;a href="http://elubuntu.blogspot.com/2009/02/installazione-dei-driver-per-la-scheda.html"&gt;installare il driver&lt;/a&gt;).&lt;br /&gt;&lt;br /&gt;Accanto ai programmi appena visti, che dispongono solo di un'interfaccia a linea di comando, esistono anche alcuni programmi con interfaccia grafica. Fra questi possiamo ricordare &lt;a href="apt:lshw-gtk"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;lshw-gtk&lt;/span&gt;&lt;/a&gt; e &lt;a href="apt:hardinfo"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;hardinfo&lt;/span&gt;&lt;/a&gt;, entrambi installabili nelle solite maniere dai repository ufficiali di Ubuntu.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://ezix.org/project/wiki/HardwareLiSter/GUI"&gt;Lshw-gtk&lt;/a&gt; non è altro un'interfaccia del precedentemente esposto &lt;span style="font-weight: bold;font-family:courier new;" &gt;lshw&lt;/span&gt; (anche in questo caso si dovrebbe avviare il comando da root per ottenere le informazioni complete, quindi lanciandolo da terminale con il comando &lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo lshw-gtk&lt;/span&gt;).&lt;br /&gt;&lt;br /&gt;&lt;a href="http://hardinfo.berlios.de/HomePage"&gt;Hardinfo&lt;/a&gt; è una semplice e utile applicazione per avere sotto controllo le informazioni “tecniche” del sistema e per effettuare qualche benchmark prestazionale. Per avviare il programma è sufficiente dare il comando &lt;span style="font-weight: bold;font-family:courier new;" &gt;hardinfo&lt;/span&gt; nel terminale. Le informazioni che si possono ottenere sul sistema attraverso &lt;span style="font-weight: bold;font-family:courier new;" &gt;hardinfo&lt;/span&gt; sono:&lt;br /&gt;- Informazioni inerenti l’hardware del computer:&lt;br /&gt;* Sistema operativo&lt;br /&gt;* Moduli del kernel&lt;br /&gt;* Avvii&lt;br /&gt;* Localizzazione&lt;br /&gt;* Filesystem&lt;br /&gt;* Display&lt;br /&gt;* Variabili d'ambiente&lt;br /&gt;* Utenti&lt;br /&gt;- Dispositivi:&lt;br /&gt;* Processore&lt;br /&gt;* Memoria&lt;br /&gt;* Dispositivi PCI&lt;br /&gt;* Dispositivi USB&lt;br /&gt;* Stampanti&lt;br /&gt;* Batteria&lt;br /&gt;* Sensori (temperatura, voltaggi, velocità delle ventole ecc)&lt;br /&gt;* Dispositivi di input&lt;br /&gt;* Memorie di massa&lt;br /&gt;* DMI&lt;br /&gt;* Risorse&lt;br /&gt;- Informazioni sulla rete:&lt;br /&gt;* Interfacce&lt;br /&gt;* Connessioni IP&lt;br /&gt;* Tabella di routing&lt;br /&gt;* Tabella ARP&lt;br /&gt;* Server DNS&lt;br /&gt;* Statistiche&lt;br /&gt;* Cartelle condivise&lt;br /&gt;- Benchmark:&lt;br /&gt;* Blowfish&lt;br /&gt;* CryptoHash&lt;br /&gt;* Fibonacci&lt;br /&gt;* N-Queens&lt;br /&gt;* FPU Raytracing&lt;br /&gt;* FFT&lt;br /&gt;I risultati dei benchmark vengono confrontati con quelli ottenuti attraverso altre macchine.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/3.0/"&gt;&lt;img alt="Creative Commons License" style="border-width:0" src="http://i.creativecommons.org/l/by-nc-sa/3.0/88x31.png" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size:78%;"  &gt;Questo post è pubblicato sotto la &lt;a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/3.0/"&gt;Licenza Creative Commons Attribuzione-Non commerciale-Condividi allo stesso modo.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Alcune parti di questo post sono state riprese da &lt;a href="http://netjack.wordpress.com/2006/12/12/hardinfo-informazioni-di-sistema-e-benchmark-a-potata-di-click/"&gt;http://netjack.wordpress.com/2006/12/12/hardinfo-informazioni-di-sistema-e-benchmark-a-potata-di-click/&lt;/a&gt; e &lt;a href="http://webupd8.blogspot.com/2009/05/2-open-source-alternatives-to-everest.html"&gt;http://webupd8.blogspot.com/2009/05/2-open-source-alternatives-to-everest.html&lt;/a&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-3977148827701957843?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/3977148827701957843/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2009/08/ottenere-informazioni-sullhardware-del.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/3977148827701957843'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/3977148827701957843'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2009/08/ottenere-informazioni-sullhardware-del.html' title='Ottenere informazioni sull&apos;hardware del sistema'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-929399157266779676</id><published>2009-08-03T14:52:00.004+02:00</published><updated>2009-08-18T23:48:50.934+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='latex'/><category scheme='http://www.blogger.com/atom/ns#' term='problema'/><category scheme='http://www.blogger.com/atom/ns#' term='terminale'/><title type='text'>Aggiungere pacchetti per LaTeX</title><content type='html'>&lt;span style="font-style:italic;"&gt;Se vuoi subito scoprire come installare pacchetti per LaTeX vai direttamente al &lt;a href="#riepilogo"&gt;riepilogo&lt;/a&gt;, se invece vuoi leggere le mie (&lt;a href="#precisazione"&gt;tutto sommato inutili&lt;/a&gt;) peripezie per aggiungere un pacchetto puoi leggere tutto il post.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://commons.wikimedia.org/wiki/File:LaTeX_logo.svg" target="_blank"&gt;&lt;img tooltip="linkalert-tip" style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 250px; height: 104px;" src="http://commons.wikimedia.org/w/thumb.php?f=LaTeX_logo.svg&amp;amp;width=250px" alt="" border="0" /&gt;&lt;/a&gt;Da un po' di tempo mi sto dilettando a scrivere testi con &lt;a href="http://it.wikipedia.org/wiki/LaTeX"&gt;LaTeX&lt;/a&gt;. Qualche giorno fa avevo la necessità di installare un nuovo &lt;a tooltip="linkalert-tip" href="http://www.guit.sssup.it/installazione/pacchetti.php"&gt;pacchetto&lt;/a&gt; LaTeX, per la precisione il pacchetto &lt;a href="http://www.tex.ac.uk/tex-archive/help/Catalogue/entries/empheq.html"&gt;&lt;span tooltip="linkalert-tip" style="font-weight: bold;font-family:courier new;" &gt;empheq&lt;/span&gt;&lt;/a&gt;. Ho dovuto navigare un po' su Internet prima di trovare la soluzione, mettendo insieme varie guide trovate in giro. Per altro, alla fine del mio peregrinare ho scoperto che avrei potuto molto più facilmente installare (per esempio da &lt;a tooltip="linkalert-tip" href="http://wiki.ubuntu-it.org/AmministrazioneSistema/Synaptic"&gt;Synaptic&lt;/a&gt;) in Ubuntu il pacchetto &lt;span style="font-weight: bold;font-family:courier new;" &gt;texlive-latex-extra&lt;/span&gt; che fornisce poco meno di 500 pacchetti LaTeX (&lt;a href="http://packages.ubuntu.com/jaunty/texlive-latex-extra"&gt;qui&lt;/a&gt; potete leggere l'elenco dei pacchetti forniti nella versione presente in Ubuntu Jaunty).&lt;br /&gt;&lt;br /&gt;In attesa di vedere in un futuro non troppo lontano in Ubuntu la versione 2008 della distribuzione &lt;a tooltip="linkalert-tip" href="http://www.tug.org/texlive/"&gt;TeX Live&lt;/a&gt;, con cui pare sia molto semplice installare nuovi pacchetti LaTeX (anche quelli non presenti in &lt;span style="font-weight: bold;font-family:courier new;" &gt;texlive-latex-extra&lt;/span&gt;), spiegherò come ho fatto.&lt;br /&gt;&lt;br /&gt;La guida che ho seguito inizialmente è stata &lt;a tooltip="linkalert-tip" href="http://www.guit.sssup.it/installazione/pacchetti.php"&gt;http://www.guit.sssup.it/installazione/pacchetti.php&lt;/a&gt;. Per prima cosa, per installare un nuovo pacchetto, è necessario ovviamente scaricarlo. Nel mio caso, per ottenere il pacchetto &lt;span style="font-weight: bold;font-family:courier new;" &gt;empheq&lt;/span&gt; ho scaricato l'archivio &lt;a tooltip="linkalert-tip" href="http://theory.uwinnipeg.ca/scripts/CTAN/macros/latex/contrib/mh.zip"&gt;http://theory.uwinnipeg.ca/scripts/CTAN/macros/latex/contrib/mh.zip&lt;/a&gt;. L'ho scompattato e ho compilato il file &lt;span style="font-weight: bold;font-family:courier new;" &gt;empheq.dtx&lt;/span&gt; in modo da ottenere il file &lt;span style="font-weight: bold;font-family:courier new;" &gt;empheq.sty&lt;/span&gt;. Il problema che sorgeva a questo punto era posizionare il pacchetto in una cartella in cui LaTeX sarebbe stato in grado di trovarlo. Infatti, compilando un sorgente LaTeX che includeva &lt;span style="font-weight: bold;font-family:courier new;" &gt;empheq&lt;/span&gt; ottenevo il seguente messaggio di errore:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;! LaTeX Error: File `empheq.sty' not found.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;In realtà, compilando il sorgente da terminale, quando compare questo messaggio di errore è possibile inserire il percorso del pacchetto, ma ovviamente questa non è una soluzione molto pratica. Una cartella in cui si potrebbero inserire i pacchetti affinché LaTeX sia in grado di utilizzarli è &lt;span style="font-weight: bold;font-family:courier new;" &gt;/usr/share/texmf/tex/latex/&lt;/span&gt;, ma personalmente preferisco per svariati motivi salvare queste cose all'interno della home (anche per evitare ogni volta di dover &lt;a tooltip="linkalert-tip" href="http://wiki.ubuntu-it.org/AmministrazioneSistema/Sudo"&gt;diventare root&lt;/a&gt; per aggiungere o modificare un pacchetto). Sul &lt;a tooltip="linkalert-tip" href="http://www.guit.sssup.it/phpbb/index.php"&gt;forum GUIT&lt;/a&gt; avevo letto che per sapere qual è la cartella in cui salvare il pacchetto bisogna dare nel terminale il seguente comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;kpsexpand '$TEXMFHOME'&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;che mi ha restituito come output&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;/home/luke/texmf&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Ho quindi spostato il pacchetto nella cartella indicata (che ho creato perché non esisteva) e provato a ricompilare il sorgente però ricevendo sempre il precedente messaggio di errore. Con un po' di fortuna ho trovato un altro comando per trovare le cartelle in cui salvare i pacchetti:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;kpsepath tex&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;che ha restituito questo output un po' illeggibile:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;.:/home/luke/.texmf-config/tex/kpsewhich//:/home/luke/.texmf-var/tex/kpsewhich//:/home/luke/texmf/tex/kpsewhich//:/etc/texmf/tex/kpsewhich//:!!/var/lib/texmf/tex/kpsewhich//:!!/usr/local/share/texmf/tex/kpsewhich//:!!/usr/share/texmf/tex/kpsewhich//:!!/usr/share/texmf-texlive/tex/kpsewhich//:/home/luke/.texmf-config/tex/generic//:/home/luke/.texmf-var/tex/generic//:/home/luke/texmf/tex/generic//:/etc/texmf/tex/generic//:!!/var/lib/texmf/tex/generic//:!!/usr/local/share/texmf/tex/generic//:!!/usr/share/texmf/tex/generic//:!!/usr/share/texmf-texlive/tex/generic//:/home/luke/.texmf-config/tex///:/home/luke/.texmf-var/tex///:/home/luke/texmf/tex///:/etc/texmf/tex///:!!/var/lib/texmf/tex///:!!/usr/local/share/texmf/tex///:!!/usr/share/texmf/tex///:!!/usr/share/texmf-texlive/tex///&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;È un elenco che utilizza i due punti come separatore fra le cartelle (più qualche punto esclamativo messo con non so quale criterio). Per renderlo un po' più comprensibile ho utilizzato 3 pipe che restringessero inoltre il campo alle cartelle contenute nella home:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;kpsepath tex | sed 's/:/\n/g' | tr -d '!' | grep home&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;con questo output:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;/home/luke/.texmf-config/tex/kpsewhich//&lt;br /&gt;/home/luke/.texmf-var/tex/kpsewhich//&lt;br /&gt;/home/luke/texmf/tex/kpsewhich//&lt;br /&gt;/home/luke/.texmf-config/tex/generic//&lt;br /&gt;/home/luke/.texmf-var/tex/generic//&lt;br /&gt;/home/luke/texmf/tex/generic//&lt;br /&gt;/home/luke/.texmf-config/tex///&lt;br /&gt;/home/luke/.texmf-var/tex///&lt;br /&gt;/home/luke/texmf/tex///&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;In particolare ha attirato la mia attenzione l'ultima cartella, &lt;span style="font-weight: bold;font-family:courier new;" &gt;/home/luke/texmf/tex/&lt;/span&gt; (lasciate stare gli slash in più alla fine dei percorsi). Ho quindi creato la cartella &lt;span style="font-weight: bold;font-family:courier new;" &gt;/home/luke/texmf/tex/&lt;/span&gt; e spostato nuovamente il pacchetto &lt;span style="font-weight: bold;font-family:courier new;" &gt;empheq.sty&lt;/span&gt; in questa cartella. Provando a ricompilare il sorgente però continuavo a ricevere sempre lo stesso errore che segnala pacchetto non trovato. Nella guida&lt;span style="text-decoration: underline;"&gt; &lt;/span&gt;&lt;a tooltip="linkalert-tip" href="http://wiki.ubuntu-it.org/Ufficio/Latex"&gt;http://wiki.ubuntu-it.org/Ufficio/Latex&lt;/a&gt; ho letto che per aggiornare l'elenco dei pacchetti era necessario dare il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo texhash&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Leggendo però il &lt;a href="http://manpages.ubuntu.com/manpages/jaunty/en/man1/texhash.1.html"&gt;manuale&lt;/a&gt; del comando (nel terminale: &lt;span style="font-weight: bold;font-family:courier new;" &gt;man texhash&lt;/span&gt;) ho scoperto che quel comando non aggiorna l'elenco dei pacchetti contenuti nella home. Per fare ciò bisogna dare quindi il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;texhahs ~/texmf&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;(ricordo che la tilde &lt;span style="font-weight: bold;font-family:courier new;" &gt;~&lt;/span&gt; è un'abbreviazione del percorso della home dell'utente corrente) e finalmente sono riuscito a compilare il sorgente.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a name="riepilogo"&gt;&lt;/a&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;Riepilogo delle operazioni da fare&lt;/span&gt;: scaricare il pacchetto e posizionare il file &lt;span style="font-weight: bold;font-family:courier new;" &gt;.sty&lt;/span&gt; nella cartella &lt;span style="font-weight: bold;font-family:courier new;" &gt;~/texmf/tex&lt;/span&gt; (ovviamente creandola se non esiste). Se nell'archivio che si è scaricato non è presente un file &lt;span style="font-weight: bold;font-family:courier new;" &gt;.sty&lt;/span&gt; ma un &lt;span style="font-weight: bold;font-family:courier new;" &gt;.ins&lt;/span&gt; o un &lt;span style="font-weight: bold;font-family:courier new;" &gt;.dtx&lt;/span&gt; bisogna compilare questi file per ottenere il &lt;span style="font-weight: bold;font-family:courier new;" &gt;.sty&lt;/span&gt;, come spiegato &lt;a tooltip="linkalert-tip" href="http://www.guit.sssup.it/installazione/pacchetti.php"&gt;qui&lt;/a&gt;. Quindi bisogna aggiornare l'elenco dei pacchetti LaTeX presenti nella cartella con il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;texhash ~/texmf&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;e si può finalmente compilare il sorgente che include il nuovo pacchetto.&lt;br /&gt;&lt;br /&gt;In realtà sarebbe sufficiente anche inserire il pacchetto nella stessa cartella in cui si trova il sorgente senza dover usare ulteriori comandi, ma trovo questa soluzione poco pratica nel caso in cui si dovessero avere sorgenti LaTeX in numerose cartelle diverse.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a name="precisazione"&gt;&lt;/a&gt;&lt;span style="font-style:italic;"&gt;&lt;span style="font-weight:bold;"&gt;Precisazione del 18/8/2009:&lt;/span&gt; rileggendo con più attenzione di quanto non avessi fatto inizialmente la guida &lt;a href="http://www.guit.sssup.it/installazione/pacchetti.php"&gt;http://www.guit.sssup.it/installazione/pacchetti.php&lt;/a&gt; mi sono accorto che c'era scritto:&lt;/span&gt;&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight:bold;"&gt;copiare il relativo file .sty nella sotto-cartella /tex/latex/ di uno dei tre alberi (eventualmente creando tale sotto-cartella, se non ci fosse già);&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-style:italic;"&gt;Quindi senza perdere tutto il tempo che ho perso avrei potuto subito notare che era necessario mettere i pacchetti nella sottocartella &lt;span style="font-weight: bold;font-family:courier new;" &gt;tex/latex/&lt;/span&gt; di &lt;span style="font-weight: bold;font-family:courier new;" &gt;~/texmf&lt;/span&gt; (in realtà a me funziona anche solo con &lt;span style="font-weight: bold;font-family:courier new;" &gt;tex/&lt;/span&gt;, non ho avuto bisogno di creare anche la sottocartella &lt;span style="font-weight: bold;font-family:courier new;" &gt;latex/&lt;/span&gt;). Resta comunque valido il procedimento descritto nel &lt;a href="#riepilogo"&gt;riepilogo&lt;/a&gt;.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-929399157266779676?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/929399157266779676/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2009/08/aggiungere-pacchetti-per-latex.html#comment-form' title='2 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/929399157266779676'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/929399157266779676'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2009/08/aggiungere-pacchetti-per-latex.html' title='Aggiungere pacchetti per LaTeX'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-5057218701102382963</id><published>2009-07-22T21:30:00.008+02:00</published><updated>2010-01-05T14:22:38.780+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='octave'/><category scheme='http://www.blogger.com/atom/ns#' term='compilazione'/><category scheme='http://www.blogger.com/atom/ns#' term='problema'/><category scheme='http://www.blogger.com/atom/ns#' term='qtoctave'/><category scheme='http://www.blogger.com/atom/ns#' term='pacchetti'/><category scheme='http://www.blogger.com/atom/ns#' term='terminale'/><title type='text'>Compilare QtOctave 0.8.2</title><content type='html'>Dopo aver &lt;a tooltip="linkalert-tip" href="http://elubuntu.blogspot.com/2009/07/compilare-gnu-octave-322.html"&gt;compilato GNU Octave 3.2.2&lt;/a&gt; ho compilato un programma che fornisce un'interfaccia grafica per Octave: &lt;a tooltip="linkalert-tip" href="http://qtoctave.wordpress.com/"&gt;QtOctave&lt;/a&gt;. La versione che ho scaricato è l'ultima disponibile a oggi, la 0.8.2, rilasciata poche settimane dopo la versione 3.2 di GNU Octave.&lt;br /&gt;&lt;br /&gt;Anche in  questo caso consiglio a chi non può o non vuole compilare questi programmi di scaricare i pacchetti precompilati per Ubuntu di Octave 3.2 + QtOctave 0.8.2 dal sito &lt;a href="http://tobal.cymaho.com/?p=920"&gt;http://tobal.cymaho.com/?p=920&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;L'URL per scaricare i sorgenti di QtOctave può essere trovato a questo indirizzo: &lt;a tooltip="linkalert-tip" href="http://qtoctave.wordpress.com/download/"&gt;http://qtoctave.wordpress.com/download/&lt;/a&gt;, in particolare la versione che ho scaricato si ottiene da &lt;a tooltip="linkalert-tip" href="http://forja.rediris.es/frs/download.php/1383/qtoctave-0.8.2.tar.gz"&gt;http://forja.rediris.es/frs/download.php/1383/qtoctave-0.8.2.tar.gz&lt;/a&gt;. Scompattate l'archivio in una cartella, aprite un terminale (&lt;span style="font-weight: bold;"&gt;Applicazioni&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;Accessori&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;Terminale&lt;/span&gt;) e spostatevi (nel terminale con il comando &lt;span style="font-weight: bold;font-family:courier new;" &gt;cd&lt;/span&gt;) nella cartella in cui avete scompattato il sorgente. Se per esempio è la cartella &lt;span style="font-weight: bold;font-family:courier new;" &gt;~/Scrivania/qtoctave-0.8.2&lt;/span&gt; (ricordo che la tilde ~ è l'abbreviazione della home dell'utente corrente) dovete dare il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;cd ~/Scrivania/qtoctave-0.8.2&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Come per ogni compilazione, è necessario installare i compilatore, che si ottengono installando il pacchetto &lt;span style="font-weight: bold;font-family:courier new;" &gt;build-essential&lt;/span&gt;. Questo può essere installato da &lt;a tooltip="linkalert-tip" href="http://wiki.ubuntu-it.org/AmministrazioneSistema/Synaptic"&gt;Synaptic&lt;/a&gt;, oppure da terminale con il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo apt-get install build-essential&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Dopo di ciò bisogna installare i pacchetti necessari per la compilazione di QtOctave con il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo apt-get build-dep qtoctave&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Nel file &lt;span style="font-weight: bold;font-family:courier new;" &gt;readme.txt&lt;/span&gt; che si trova nella cartella dei sorgenti spiega che bisogna inoltre installare le librerie Qt e i pacchetti di sviluppo Qt, dalla versione 4.5.0 in poi. È sufficiente installare il pacchetto &lt;a href="apt:libqt4-dev"&gt;&lt;span tooltip="linkalert-tip" style="font-weight: bold;font-family:courier new;" &gt;libqt4-dev&lt;/span&gt;&lt;/a&gt; , tutti le dipendenze verranno installate automaticamente. Inoltre bisogna installare il pacchetto &lt;a href="apt:cmake"&gt;&lt;span tooltip="linkalert-tip" style="font-weight: bold;"&gt;cmake&lt;/span&gt;&lt;/a&gt;. Senza aver installato le librerie Qt sarebbe comparso il seguente messaggio di errore in fase di compilazione:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;CMake Error at /usr/share/cmake-2.6/Modules/FindQt4.cmake:1472 (MESSAGE):&lt;br /&gt;Qt qmake not found!&lt;br /&gt;Call Stack (most recent call first):&lt;br /&gt;CMakeLists.txt:22 (FIND_PACKAGE)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;-- Configuring incomplete, errors occurred!&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;A questo punto, nel file &lt;span style="font-weight: bold;font-family:courier new;" &gt;readme.txt&lt;/span&gt; viene consigliato di creare una cartella chiamata &lt;span style="font-weight: bold;font-family:courier new;" &gt;build&lt;/span&gt; ed eseguire una serie di comandi elencati. In questo modo, però, ho rilevato numeri errori in fase di compilazione di questo tipo:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;[ 44%] Building CXX object easy_plot/src/CMakeFiles/easy_plot.dir/main.o&lt;br /&gt;In file included from /home/luke/qtoctave-0.8.2/easy_plot/src/main.cpp:3:&lt;br /&gt;/home/luke/qtoctave-0.8.2/easy_plot/src/main_window.h:7:35: error: ui_design_main_window.h: Nessun file o directory&lt;br /&gt;/home/luke/qtoctave-0.8.2/easy_plot/src/main_window.h:9:27: error: ui_view_angle.h: Nessun file o directory&lt;br /&gt;In file included from /home/luke/qtoctave-0.8.2/easy_plot/src/main.cpp:3:&lt;br /&gt;/home/luke/qtoctave-0.8.2/easy_plot/src/main_window.h:11: error: ‘Ui’ is not a namespace-name&lt;br /&gt;/home/luke/qtoctave-0.8.2/easy_plot/src/main_window.h:11: error: expected namespace-name before ‘;’ token&lt;br /&gt;/home/luke/qtoctave-0.8.2/easy_plot/src/main_window.h:18: error: ‘Ui_DesignMainWindow’ does not name a type&lt;br /&gt;/home/luke/qtoctave-0.8.2/easy_plot/src/main_window.h:21: error: ISO C++ forbids declaration of ‘Ui_ViewAngle’ with no type&lt;br /&gt;/home/luke/qtoctave-0.8.2/easy_plot/src/main_window.h:21: error: expected ‘;’ before ‘*’ token&lt;br /&gt;make[2]: *** [easy_plot/src/CMakeFiles/easy_plot.dir/main.o] Errore 1&lt;br /&gt;make[1]: *** [easy_plot/src/CMakeFiles/easy_plot.dir/all] Errore 2&lt;br /&gt;make: *** [all] Errore 2&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Oltre a questo mi sono comparsi altri errori simili. Li ho risolti copiando gli &lt;a tooltip="linkalert-tip" href="http://it.wikipedia.org/wiki/Header_file"&gt;header file&lt;/a&gt; che vengono segnalati come mancanti da una sottocartella della cartella &lt;span style="font-weight: bold;font-family:courier new;" &gt;build&lt;/span&gt; creata, nella cartella in cui si trovano i sorgenti che compaiono nei messaggi di errore. Sono comunque riuscito a evitare tutto ciò nel seguente modo: dopo aver installato i pacchetti sopra elencati ho dato nel terminale (posizionato nella cartella in cui ho scompattato l'archivio) il  comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;cmake .&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;(notate il punto dopo &lt;span style="font-weight: bold;font-family:courier new;" &gt;cmake&lt;/span&gt; che &lt;a tooltip="linkalert-tip" href="http://it.wikipedia.org/wiki/Bash"&gt;shell bash&lt;/a&gt; rappresenta un'abbreviazione della cartella corrente, infatti il comando &lt;span style="font-weight: bold;font-family:courier new;" &gt;cmake&lt;/span&gt; richiede come argomento la cartella in cui si trova un sorgente. Per maggiori informazioni consultate il &lt;a tooltip="linkalert-tip" href="http://manpages.ubuntu.com/manpages/jaunty/en/man1/cmake.1.html"&gt;manuale&lt;/a&gt;) a differenza di quanto spiegato nel file  &lt;span style="font-weight: bold;font-family:courier new;" &gt;readme.txt&lt;/span&gt; (&lt;span style="font-style: italic;"&gt;AGGIORNAMENTO: mi sono accorto che questa è proprio la procedura descritta in &lt;/span&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt;leeme&lt;/span&gt;&lt;span style="font-weight: bold; font-style: italic;font-family:courier new;" &gt;.txt&lt;/span&gt;&lt;span style="font-style: italic;"&gt;, forse l'autore si è dimenticato di aggiornare anche il file in lingua inglese&lt;/span&gt;). Poi ho proseguito con il  comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;make&lt;/span&gt;&lt;br /&gt;&lt;/div&gt; Dopo il &lt;span style="font-weight: bold;font-family:courier new;" &gt;make&lt;/span&gt;, per installare il programma si dovrebbe dare il  comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo make install&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;ma anche in questo caso ho preferito creare un pacchetto deb con e &lt;a tooltip="linkalert-tip" href="http://wiki.ubuntu-it.org/Programmazione/Checkinstall"&gt;checkinstall&lt;/a&gt;. Per creare il pacchetto, senza installarlo, ho dato il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo checkinstall --install=no&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Successivamente ho &lt;a tooltip="linkalert-tip" href="http://wiki.ubuntu-it.org/AmministrazioneSistema/InstallarePacchettiDebian"&gt;installato&lt;/a&gt; il pacchetto deb che è stato creato.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style:italic;"&gt;Aggiornamento&lt;/span&gt;: in &lt;a href="http://forum.ubuntu-it.org/index.php/topic,299794.0.html"&gt;questa discussione&lt;/a&gt; sul forum di Ubuntu ho aiutato a compilare QtOctave 0.8.2 l'utente simo2777, che però ha riscontrato qualche problema in più rispetto a me. Riporto qui gli errori e le soluzioni per completezza.&lt;br /&gt;&lt;a href="http://forum.ubuntu-it.org/index.php/topic,299794.msg2715901.html#msg2715901"&gt;Primo problema&lt;/a&gt;:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;[ 40%] Building CXX object easy_plot/src/CMakeFiles/easy_plot.dir/gnuplot_connection.o&lt;br /&gt;/home/simone/Programmi/qtoctave-0.8.2/easy_plot/src/gnuplot_connection.cpp: In member function ‘void GnuplotConnection::standardOutputReady()’:&lt;br /&gt;/home/simone/Programmi/qtoctave-0.8.2/easy_plot/src/gnuplot_connection.cpp:143: error: ‘printf’ was not declared in this scope&lt;br /&gt;make[2]: *** [easy_plot/src/CMakeFiles/easy_plot.dir/gnuplot_connection.o] Errore 1&lt;br /&gt;make[1]: *** [easy_plot/src/CMakeFiles/easy_plot.dir/all] Errore 2&lt;br /&gt;make: *** [all] Errore 2&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;a href="http://forum.ubuntu-it.org/index.php/topic,299794.msg2715914.html#msg2715914"&gt;Soluzione&lt;/a&gt; (solo per il primo errore, per il successivo leggi più avanti): installare le dipendenze di &lt;span style="font-weight: bold;font-family:courier new;" &gt;qtoctave&lt;/span&gt; con il comando &lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo apt-get build-dep qtoctave&lt;/span&gt; e (se non già presente) il pacchetto &lt;span style="font-weight: bold;font-family:courier new;" &gt;gnuplot&lt;/span&gt; con il comando &lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo apt-get install gnuplot&lt;/span&gt;.&lt;br /&gt;&lt;a href="http://forum.ubuntu-it.org/index.php/topic,299794.msg2715931.html#msg2715931"&gt;Secondo problema&lt;/a&gt;:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;[ 43%] Building CXX object easy_plot/src/CMakeFiles/easy_plot.dir/gnuplot_connection.o&lt;br /&gt;/home/simone/Programmi/qtoctave-0.8.2/easy_plot/src/gnuplot_connection.cpp: In member function ‘void GnuplotConnection::standardOutputReady()’:&lt;br /&gt;/home/simone/Programmi/qtoctave-0.8.2/easy_plot/src/gnuplot_connection.cpp:143: error: ‘printf’ was not declared in this scope&lt;br /&gt;make[2]: *** [easy_plot/src/CMakeFiles/easy_plot.dir/gnuplot_connection.o] Errore 1&lt;br /&gt;make[1]: *** [easy_plot/src/CMakeFiles/easy_plot.dir/all] Errore 2&lt;br /&gt;make: *** [all] Errore 2&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;a href="http://forum.ubuntu-it.org/index.php/topic,299794.msg2716146.html#msg2716146"&gt;Soluzione&lt;/a&gt; (trovata &lt;a href="http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=550264"&gt;qui&lt;/a&gt;): includere nel file &lt;span style="font-weight: bold;font-family:courier new;" &gt;easy_plot/src/gnuplot_connection.cpp&lt;/span&gt; l'header &lt;span style="font-weight: bold;font-family:courier new;" &gt;cstdio&lt;/span&gt;, per esempio in questo modo:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;#include &amp;lt;QXmlStreamReader&amp;gt;&lt;br /&gt;#include &amp;lt;QXmlStreamWriter&amp;gt;&lt;br /&gt;#include &amp;lt;QHash&amp;gt;&lt;br /&gt;#include &amp;lt;cstdio&amp;gt;&lt;br /&gt;&lt;br /&gt;GnuplotConnection::GnuplotConnection(QObject *parent):QProcess(parent)&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;a href="http://forum.ubuntu-it.org/index.php/topic,299794.msg2716314.html#msg2716314"&gt;Terzo problema&lt;/a&gt; (simile a quello precedente):&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;[ 75%] Building CXX object qtoctave/src/CMakeFiles/qtoctave.dir/search_dialog.o&lt;br /&gt;/home/simone/Programmi/qtoctave-0.8.2/qtoctave/src/search_dialog.cpp: In destructor ‘virtual SearchDialog::~SearchDialog()’:&lt;br /&gt;/home/simone/Programmi/qtoctave-0.8.2/qtoctave/src/search_dialog.cpp:96: error: ‘printf’ was not declared in this scope&lt;br /&gt;make[2]: *** [qtoctave/src/CMakeFiles/qtoctave.dir/search_dialog.o] Errore 1&lt;br /&gt;make[1]: *** [qtoctave/src/CMakeFiles/qtoctave.dir/all] Errore 2&lt;br /&gt;make: *** [all] Errore 2&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;a href="http://forum.ubuntu-it.org/index.php/topic,299794.msg2716506.html#msg2716506"&gt;Soluzione&lt;/a&gt;: come prima, includere l'header &lt;span style="font-weight: bold;font-family:courier new;" &gt;cstdio&lt;/span&gt; nel file&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;qtoctave/src/search_dialog.cpp&lt;/span&gt; aggiungendo la riga&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;#include &amp;lt;cstdio&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;all'inizio.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-5057218701102382963?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/5057218701102382963/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2009/07/compilare-qtoctave-082.html#comment-form' title='2 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/5057218701102382963'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/5057218701102382963'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2009/07/compilare-qtoctave-082.html' title='Compilare QtOctave 0.8.2'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-8478430044418997611</id><published>2009-07-22T16:05:00.012+02:00</published><updated>2011-02-26T15:43:02.663+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='octave'/><category scheme='http://www.blogger.com/atom/ns#' term='compilazione'/><category scheme='http://www.blogger.com/atom/ns#' term='problema'/><category scheme='http://www.blogger.com/atom/ns#' term='pacchetti'/><category scheme='http://www.blogger.com/atom/ns#' term='terminale'/><title type='text'>Compilare GNU Octave 3.2.2</title><content type='html'>&lt;i&gt;&lt;b&gt;Nota&lt;/b&gt;: all'indirizzo &lt;a href="http://elubuntu.blogspot.com/2011/02/compilare-gnu-octave-340.html"&gt;http://elubuntu.blogspot.com/2011/02/compilare-gnu-octave-340.html&lt;/a&gt; trovate una guida su come compilare GNU Octave 3.4.0.&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://commons.wikimedia.org/wiki/File:Octave_Sombrero.svg" target="_blank"&gt;&lt;img tooltip="linkalert-tip" style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://upload.wikimedia.org/wikipedia/commons/thumb/c/c5/Octave_Sombrero.svg/200px-Octave_Sombrero.svg.png" alt="" border="0" /&gt;&lt;/a&gt;In Ubuntu 9.04 è presente ancora una versione non nuovissima di &lt;a tooltip="linkalert-tip" href="http://www.gnu.org/software/octave/index.html"&gt;GNU Octave&lt;/a&gt; e avrei voluto scrivere come ho &lt;a tooltip="linkalert-tip" href="http://wiki.ubuntu-it.org/AmministrazioneSistema/InstallareProgrammi/DaSorgenti"&gt;compilato&lt;/a&gt; GNU Octave 3.2, ma proprio oggi &lt;a tooltip="linkalert-tip" href="http://www.gnu.org/software/octave/news.html"&gt;è uscita&lt;/a&gt; la più recente versione del programma di analisi numerica, ottimo sostituto open-source di Matlab, e quindi spiegherò come ho compilato GNU Octave 3.2.2 (l'ho testato su Ubuntu Jaunty Jackalope, su versioni precedenti del sistema potrebbero mancare troppi pacchetti necessari all'installazione del programma).&lt;br /&gt;&lt;br /&gt;Avviso già da adesso, che ci non vuole provare l'"ebbrezza" di compilare da solo questo programma ma preferisce installare direttamente i pacchetti .deb, può scaricare da &lt;a tooltip="linkalert-tip" href="http://download526.mediafire.com/z3xzt2mckuxg/kzmzjxyvwwm/OCTAVE3.2%2BQTOCTAVE0.8.2.zip"&gt;qui&lt;/a&gt; un archivio contenente tutto ciò che serve (sono presenti i pacchetti di Octave 3.2, dell'interfaccia grafica QtOctave e le varie dipendenze che sono necessarie). L'archivio l'ho trovato a questo indirizzo. &lt;a tooltip="linkalert-tip" href="http://tobal.cymaho.com/?p=920"&gt;http://tobal.cymaho.com/?p=920&lt;/a&gt;. Questa soluzione potrebbe essere preferita anche da chi non ha intenzione o la possibilità di scaricare diversi megabyte (credo poche centinaia) di pacchetti assortititi che occuperanno molto spazio sull'hard disk dopo l'installazione.&lt;br /&gt;&lt;br /&gt;Per prima cosa, ovviamente, serve il sorgente: lo trovate nella pagina dei &lt;a tooltip="linkalert-tip" href="http://www.gnu.org/software/octave/download.html"&gt;download&lt;/a&gt; di Octave, l'indirizzo del sorgente è&lt;a tooltip="linkalert-tip" href="ftp://ftp.octave.org/pub/octave/octave-3.2.2.tar.gz"&gt; ftp://ftp.octave.org/pub/octave/octave-3.2.2.tar.gz&lt;/a&gt;. Scaricate l'archivio e scompattatelo in una cartella (ricordatevi per bene il nome della cartella in cui l'avete salvato). Da questo momento in poi sarà necessario usare (quasi) sempre il terminale, quindi apritene uno (&lt;span style="font-weight: bold;"&gt;Applicazioni&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;Accessori&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;Terminale&lt;/span&gt;) e spostatevi (nel terminale con il comando &lt;span style="font-weight: bold;font-family:courier new;" &gt;cd&lt;/span&gt;) nella cartella in cui avete scompattato il sorgente. Se per esempio è la cartella &lt;span style="font-weight: bold;font-family:courier new;" &gt;~/Scrivania/octave-3.2.2&lt;/span&gt; (ricordo che la tilde ~ è l'abbreviazione della home dell'utente corrente) dovete dare il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;cd ~/Scrivania/octave-3.2.2&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Come per ogni compilazione, è necessario installare i compilatore, che si ottengono installando il pacchetto &lt;span style="font-weight: bold;font-family:courier new;" &gt;build-essential&lt;/span&gt;. Questo può essere installato da &lt;a tooltip="linkalert-tip" href="http://wiki.ubuntu-it.org/AmministrazioneSistema/Synaptic"&gt;Synaptic&lt;/a&gt;, oppure da terminale con il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo apt-get install build-essential&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Dopo di ciò bisogna installare i pacchetti necessari per la compilazione di Octave: il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo apt-get build-dep octave3.0&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;installerà la maggior parte dei pacchetti che serviranno, ma non tutti (il comando &lt;span style="font-weight: bold;font-family:courier new;" &gt;build-dep&lt;/span&gt; di &lt;span style="font-weight: bold;font-family:courier new;" &gt;apt-get&lt;/span&gt; recupera i pacchetti necessari per la compilazione del pacchetto specificato ma qualcuno potrebbe sfuggire, come in questo caso). L'usuale procedura per la compilazione del sorgente di un programma prevedere che a questo punto venga dato il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;./configure&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;(esegue il programma &lt;span style="font-weight: bold;font-family:courier new;" &gt;configure&lt;/span&gt;, quindi assicuratevi di essere nella cartella corretta). La prima volta che ho eseguito il &lt;span style="font-weight: bold;font-family:courier new;" &gt;configure&lt;/span&gt;, alla fine ho ricevuto questo elenco di avvisi:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;configure: WARNING: I didn't find bison, but it's only a problem if you need to reconstruct parse.cc&lt;br /&gt;configure: WARNING: qrupdate not found. The QR &amp;amp; Cholesky updating functions will be slow.&lt;br /&gt;configure: WARNING: arpack not found. This will result in a lack of the eigs function.&lt;br /&gt;configure: WARNING: GraphicsMagick++ config script not found.  Assuming GraphicsMagic++ library and header files are missing, so imread will not be fully functional&lt;br /&gt;configure: WARNING: "FLTK config script not found.  Native graphics will be disabled."&lt;br /&gt;configure: WARNING:&lt;br /&gt;configure: WARNING: I didn't find the necessary libraries to compile native&lt;br /&gt;configure: WARNING: graphics. It isn't necessary to have native graphics&lt;br /&gt;configure: WARNING: but you will have to use gnuplot or you won't be able&lt;br /&gt;configure: WARNING: to use any of Octave's plotting commands&lt;br /&gt;configure: WARNING:&lt;br /&gt;configure:&lt;br /&gt;&lt;br /&gt;NOTE: libraries may be skipped if a library is not found OR&lt;br /&gt;if the library on your system is missing required features.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Per rimediare a questi avvisi ho dovuto installare un po' di pacchetti (come al solito, questi possono essere installati da Synaptic o da terminale, come preferite).&lt;br /&gt;· Per &lt;span style="font-weight: bold;font-family:courier new;" &gt;bison&lt;/span&gt; è necessario il pacchetto &lt;span style="font-weight: bold;font-family:courier new;" &gt;&lt;a href="apt:bison"&gt;bison&lt;/a&gt;&lt;/span&gt;.&lt;br /&gt;· Per &lt;span style="font-weight: bold;font-family:courier new;" &gt;arpack&lt;/span&gt; ho installato i pacchetti &lt;span style="font-weight: bold;font-family:courier new;" &gt;&lt;a tooltip="linkalert-tip" href="apt:libarpack2"&gt;libarpack2&lt;/a&gt; &lt;a tooltip="linkalert-tip" href="apt:libarpack2-dev"&gt;libarpack2-dev&lt;/a&gt; &lt;a tooltip="linkalert-tip" href="apt:libibverbs1"&gt;libibverbs1&lt;/a&gt; &lt;a href="apt:libopenmpi1"&gt;libopenmpi1&lt;/a&gt; &lt;a tooltip="linkalert-tip" href="apt:libopenmpi-dev"&gt;libopenmpi-dev&lt;/a&gt; &lt;a tooltip="linkalert-tip" href="apt:openmpi-common"&gt;openmpi-common&lt;/a&gt;&lt;/span&gt;.&lt;br /&gt;· Per &lt;span style="font-weight: bold;font-family:courier new;" &gt;GraphicsMagick++&lt;/span&gt;&lt;span style="font-weight: bold;"&gt; &lt;/span&gt;ho installati i pacchetti &lt;span style="font-weight: bold;font-family:courier new;" &gt;&lt;a tooltip="linkalert-tip" href="apt:libbz2-dev"&gt;libbz2-dev&lt;/a&gt; &lt;a tooltip="linkalert-tip" href="apt:libexif-dev"&gt;libexif-dev&lt;/a&gt; &lt;a tooltip="linkalert-tip" href="apt:libexpat1-dev"&gt;libexpat1-dev&lt;/a&gt; &lt;a tooltip="linkalert-tip" href="apt:libfreetype6-dev"&gt;libfreetype6-dev&lt;/a&gt; &lt;a tooltip="linkalert-tip" href="apt:libgraphicsmagick++1"&gt;libgraphicsmagick++1&lt;/a&gt; &lt;a tooltip="linkalert-tip" href="apt:libgraphicsmagick++1-dev"&gt;libgraphicsmagick++1-dev&lt;/a&gt; &lt;a tooltip="linkalert-tip" href="apt:libgraphicsmagick1"&gt;libgraphicsmagick1&lt;/a&gt; &lt;a tooltip="linkalert-tip" href="apt:libgraphicsmagick1-dev"&gt;libgraphicsmagick1-dev&lt;/a&gt; &lt;a tooltip="linkalert-tip" href="apt:libice-dev"&gt;libice-dev&lt;/a&gt; &lt;a tooltip="linkalert-tip" href="apt:libjasper-dev"&gt;libjasper-dev&lt;/a&gt; &lt;a tooltip="linkalert-tip" href="apt:liblcms1-dev"&gt;liblcms1-dev&lt;/a&gt; &lt;a tooltip="linkalert-tip" href="apt:libpng12-dev"&gt;libpng12-dev&lt;/a&gt; &lt;a tooltip="linkalert-tip" href="apt:libpthread-stubs0"&gt;libpthread-stubs0&lt;/a&gt; &lt;a tooltip="linkalert-tip" href="apt:libpthread-stubs0-dev"&gt;libpthread-stubs0-dev&lt;/a&gt; &lt;a tooltip="linkalert-tip" href="apt:libsm-dev"&gt;libsm-dev&lt;/a&gt; &lt;a tooltip="linkalert-tip" href="apt:libtiff4-dev"&gt;libtiff4-dev&lt;/a&gt; &lt;a tooltip="linkalert-tip" href="apt:libtiffxx0c2"&gt;libtiffxx0c2&lt;/a&gt; &lt;a tooltip="linkalert-tip" href="apt:libwmf-dev"&gt;libwmf-dev&lt;/a&gt; &lt;a tooltip="linkalert-tip" href="apt:libx11-dev"&gt;libx11-dev&lt;/a&gt; &lt;a tooltip="linkalert-tip" href="apt:libxau-dev"&gt;libxau-dev&lt;/a&gt; &lt;a tooltip="linkalert-tip" href="apt:libxcb1-dev"&gt;libxcb1-dev&lt;/a&gt; &lt;a tooltip="linkalert-tip" href="apt:libxdmcp-dev"&gt;libxdmcp-dev&lt;/a&gt; &lt;a tooltip="linkalert-tip" href="apt:libxext-dev"&gt;libxext-dev&lt;/a&gt; &lt;a tooltip="linkalert-tip" href="apt:libxml2-dev"&gt;libxml2-dev&lt;/a&gt; &lt;a tooltip="linkalert-tip" href="apt:x11proto-core-dev"&gt;x11proto-core-dev&lt;/a&gt; &lt;a tooltip="linkalert-tip" href="apt:x11proto-input-dev"&gt;x11proto-input-dev&lt;/a&gt; &lt;a tooltip="linkalert-tip" href="apt:x11proto-kb-dev"&gt;x11proto-kb-dev&lt;/a&gt; &lt;a tooltip="linkalert-tip" href="apt:x11proto-xext-dev"&gt;x11proto-xext-dev&lt;/a&gt; &lt;a tooltip="linkalert-tip" href="apt:xtrans-dev"&gt;xtrans-dev&lt;/a&gt;&lt;/span&gt;.&lt;br /&gt;· Per &lt;span style="font-weight: bold;font-family:courier new;" &gt;FLTK&lt;/span&gt; ho installato i pacchetti &lt;span style="font-weight: bold;font-family:courier new;" &gt;&lt;a tooltip="linkalert-tip" href="apt:libfltk1.1"&gt;libfltk1.1&lt;/a&gt; &lt;a tooltip="linkalert-tip" href="apt:libfltk1.1-dev"&gt;libfltk1.1-dev&lt;/a&gt; &lt;a tooltip="linkalert-tip" href="apt:libgl1-mesa-dev"&gt;libgl1-mesa-dev&lt;/a&gt; &lt;a tooltip="linkalert-tip" href="apt:mesa-common-dev"&gt;mesa-common-dev&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;· Per &lt;span style="font-weight: bold;font-family:courier new;" &gt;qrupdate&lt;/span&gt; ho dovuto scaricare dei pacchetti dagli archivi di Karmic, la versione di Ubuntu che deve ancora essere rilasciata. I pacchetti necessari sono stati &lt;span style="font-weight: bold;font-family:courier new;" &gt;&lt;a tooltip="linkalert-tip" href="http://packages.ubuntu.com/karmic/libqrupdate1"&gt;libqrupdate1&lt;/a&gt; &lt;a tooltip="linkalert-tip" href="http://packages.ubuntu.com/karmic/libqrupdate-dev"&gt;libqrupdate-dev&lt;/a&gt; &lt;a href="http://packages.ubuntu.com/karmic/mpi-default-dev"&gt;mpi-default-dev&lt;/a&gt;&lt;/span&gt;. Facendo clic su ciascuno dei nomi dei pacchetti qui indicati potete scegliere l'architettura del vostro sistema (&lt;span style="font-weight: bold;font-family:courier new;" &gt;amd64&lt;/span&gt; o &lt;span style="font-weight: bold;font-family:courier new;" &gt;i386&lt;/span&gt;) e scaricare i pacchetti deb che potrete &lt;a href="http://wiki.ubuntu-it.org/AmministrazioneSistema/InstallarePacchettiDebian"&gt;installare normalmente&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Dopo aver installato tutti i pacchetti ho nuovamente dato il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;./configure&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;che però questa volta non mi ha dato alcun avviso, quindi ho proceduto con il&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;make&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Durante il &lt;span style="font-weight: bold;font-family:courier new;" &gt;make&lt;/span&gt;, però, ho ricevuto un messaggio di errore:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;./DLD-FUNCTIONS/fltk_backend.cc: In member function ‘virtual void OpenGL_fltk::draw_overlay()’:&lt;br /&gt;./DLD-FUNCTIONS/fltk_backend.cc:145: error: ‘gluOrtho2D’ was not declared in this scope&lt;br /&gt;make[2]: *** [pic/fltk_backend.o] Errore 1&lt;br /&gt;make[2]: uscita dalla directory «/home/luke/octave-3.2.2/src»&lt;br /&gt;make[1]: *** [src] Errore 2&lt;br /&gt;make[1]: uscita dalla directory «/home/luke/octave-3.2.2»&lt;br /&gt;make: *** [all] Errore 2&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;La soluzione a questo problema l'ho trovata su &lt;a tooltip="linkalert-tip" href="http://www.nabble.com/fltk-backend-and-undefined-gluOrtho2D-td24513000.html"&gt;questo sito&lt;/a&gt;: installare il pacchetto &lt;a tooltip="linkalert-tip" href="apt:libglu1-mesa-dev"&gt;libglu1-mesa-dev&lt;/a&gt;. Ho ricominciato daccapo dal &lt;span style="font-weight: bold;font-family:courier new;" &gt;./configure&lt;/span&gt;, che però mi ha dato un nuovo avviso (prima gli sarà sfuggito?):&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;configure: WARNING: "FTGL headers not found. Native renderer will not have on-screen text"&lt;br /&gt;configure: WARNING:&lt;br /&gt;configure: WARNING: I didn't find the necessary libraries to compile native&lt;br /&gt;configure: WARNING: graphics. It isn't necessary to have native graphics&lt;br /&gt;configure: WARNING: but you will have to use gnuplot or you won't be able&lt;br /&gt;configure: WARNING: to use any of Octave's plotting commands&lt;br /&gt;configure: WARNING:&lt;br /&gt;configure:&lt;br /&gt;&lt;br /&gt;NOTE: libraries may be skipped if a library is not found OR&lt;br /&gt;if the library on your system is missing required features.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Per risolvere quest'altro problema ho installato i pacchetti &lt;span style="font-weight: bold;font-family:courier new;" &gt;&lt;a tooltip="linkalert-tip" href="apt:libftgl-dev"&gt;libftgl-dev&lt;/a&gt; &lt;a tooltip="linkalert-tip" href="apt:libftgl2"&gt;libftgl2&lt;/a&gt;&lt;/span&gt;. Dopo di ciò ho dato nuovamente i comandi&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;./configure&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;(fortunatamente anche questa volta senza avvisi) e poi&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;make&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Dopo un po' di tempo (credo che a me abbia impiegato circa 2 ore, ma la compilazione potrebbe richiedere anche più tempo (o di meno se siete fortunati)), il processo è terminato ed è comparso il messaggio&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;Octave successfully built.  Now choose from the following:&lt;br /&gt;&lt;br /&gt;./run-octave    - to run in place to test before installing&lt;br /&gt;make check      - to run the tests&lt;br /&gt;make install    - to install (PREFIX=/usr/local)&lt;br /&gt;&lt;br /&gt;make[1]: uscita dalla directory «/home/luke/octave-3.2.2»&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;a segnalare (come si può leggere), la fine della compilazione di GNU Octave. A questo punto si può scegliere una delle operazioni suggerite. Per installare il programma si dovrebbe dare, come consigliato, il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo make install&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;(il &lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo&lt;/span&gt; è necessario poiché verranno eseguite delle operazioni in cartelle protetta in scrittura), io però ho preferito creare un pacchetto .deb, in modo da non dover in seguito ricompilare tutto il programma. Per fare ciò, il metodo più semplice (non il migliore, ma per chi non ha bisogno di distribuire i pacchetti questo dovrebbe essere più che sufficiente) è usare &lt;a tooltip="linkalert-tip" href="http://wiki.ubuntu-it.org/Programmazione/Checkinstall"&gt;checkinstall&lt;/a&gt;. Per creare il pacchetto, senza installarlo, bisogna dare il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo checkinstall --install=no&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;L'installazione potrà poi essere fatta successivamente, come per tutti i pacchetti deb.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Per compilare l'interfaccia grafica QtOctave 0.8.2 potete leggere &lt;/span&gt;&lt;a style="font-style: italic;" href="http://elubuntu.blogspot.com/2009/07/compilare-qtoctave-082.html"&gt;qui&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="font-weight: bold;"&gt;Aggiornamento del 18/08/2009:&lt;/span&gt; oggi ho visto che nei repository della prossima versione di Ubuntu (Karmic Koala che uscirà a ottobre) è presente il pacchetto &lt;a href="http://packages.ubuntu.com/karmic/octave3.2"&gt;octave-3.2&lt;/a&gt; (&lt;s&gt;però alla versione 3.2.0, non la 3.2.2&lt;/s&gt; la versione adesso è proprio la 3.2.2), quindi chi non ha fretta di installare subito la 3.2 potrebbe aspettare per l'installazione il rilascio di Ubuntu 9.10 per poterlo installare comodamente dal gestore pacchetti.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-8478430044418997611?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/8478430044418997611/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2009/07/compilare-gnu-octave-322.html#comment-form' title='16 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/8478430044418997611'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/8478430044418997611'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2009/07/compilare-gnu-octave-322.html' title='Compilare GNU Octave 3.2.2'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>16</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-9212637098089235106</id><published>2009-06-12T15:32:00.010+02:00</published><updated>2011-02-15T00:00:47.929+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='script nautilus'/><category scheme='http://www.blogger.com/atom/ns#' term='amministrazione'/><category scheme='http://www.blogger.com/atom/ns#' term='terminale'/><category scheme='http://www.blogger.com/atom/ns#' term='gnome'/><category scheme='http://www.blogger.com/atom/ns#' term='nautilus'/><title type='text'>Scoprire il tipo di un file</title><content type='html'>Per conoscere il tipo di un file si può utilizzare l'utilissimo comando da terminale &lt;code&gt;&lt;a href="http://it.wikipedia.org/wiki/File_%28Unix%29" target="_blank"&gt;file&lt;/a&gt;&lt;/code&gt;. La sintassi per il suo utilizzo basilare è estremamente semplice:&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;file &lt;i&gt;/percorso/del/file&lt;/i&gt;&lt;br /&gt;&lt;/pre&gt;ovviamente sostituendo a &lt;code&gt;&lt;i&gt;/percorso/del/file&lt;/i&gt;&lt;/code&gt; il percorso assoluto o relativo (vedi &lt;a href="http://elubuntu.blogspot.com/2009/02/il-terminale.html" target="_blank"&gt;qui&lt;/a&gt; per maggiori informazioni) del file di cui si vuole conoscere il tipo. Per esempio, per conoscere il tipo di un file chiamato &lt;code&gt;pippo&lt;/code&gt; e posizionato nella Scrivania, nel terminale dobbiamo dare il comando&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;file ~/Scrivania/pippo&lt;br /&gt;&lt;/pre&gt;Ricordo che la tilde &lt;code&gt;~&lt;/code&gt; è l'abbreviazione della cartella home dell'utente che usa il sistema.&lt;br /&gt;&lt;br /&gt;Questo programma risulta particolarmente utile quando si vuole individuare la reale "natura"  di un file, perché il tipo di un file non si può identificare con la sola &lt;a href="http://it.wikipedia.org/wiki/Estensione_%28file%29" target="_blank"&gt;estensione&lt;/a&gt;. &lt;code&gt;file&lt;/code&gt; opera guardando il contenuto del file. Certo può capitare qualche caso in cui anche &lt;code&gt;file&lt;/code&gt; sbaglia, ma ciò che determina la "natura" di un file è il suo contenuto, non certo l'estensione che può essere cambiata a piacimento. Per conoscere le opzioni che si possono utilizzare con &lt;code&gt;file&lt;/code&gt; potete consultare il &lt;a href="http://manpages.ubuntu.com/manpages/maverick/en/man1/file.1.html" target="_blank"&gt;manuale&lt;/a&gt; con il comando&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;man file&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Chi non ama particolarmente il terminale, o comunque preferisce utilizzare anche delle interfacce grafiche, può usare questo semplice &lt;a href="http://wiki.ubuntu-it.org/AmbienteGrafico/Gnome/ScriptNautilus" target="_blank"&gt;script per Nautilus&lt;/a&gt; che ho realizzato:&lt;br /&gt;&lt;pre class="src src-shell-script"&gt;&lt;span style="color: #b22222;"&gt;#&lt;/span&gt;&lt;span style="color: #b22222;"&gt;!/bin/&lt;/span&gt;&lt;span style="color: #a020f0;"&gt;bash&lt;/span&gt;&lt;span style="color: #b22222;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #a0522d;"&gt;titolo&lt;/span&gt;=&lt;span style="color: #8b2252;"&gt;"Tipo file"&lt;/span&gt; &lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;titolo dei popup che verranno visualizzati&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #a020f0;"&gt;if&lt;/span&gt; [ $# -gt 0 ]; &lt;span style="color: #a020f0;"&gt;then&lt;/span&gt; &lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;se viene selezionato pi&amp;#249; di un file&lt;br /&gt;&lt;/span&gt;    file -- &lt;span style="color: #8b2252;"&gt;"$@"&lt;/span&gt; | zenity --text-info --title=&lt;span style="color: #8b2252;"&gt;"$titolo"&lt;/span&gt; --filename=/dev/stdin &lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;visualizza un popup che mostra il tipo di ciascun file o cartella selezionato&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #a020f0;"&gt;else&lt;/span&gt; &lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;altrimenti&lt;br /&gt;&lt;/span&gt;    zenity --error --title=&lt;span style="color: #8b2252;"&gt;"$titolo"&lt;/span&gt; --text=&lt;span style="color: #8b2252;"&gt;"Devi selezionare almeno un file"&lt;/span&gt; &lt;span style="color: #b22222;"&gt;# &lt;/span&gt;&lt;span style="color: #b22222;"&gt;visualizza un popup di errore&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #a020f0;"&gt;fi&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;Per utilizzare lo script è necessario &lt;a href="http://wiki.ubuntu-it.org/AmministrazioneSistema/InstallareProgrammi#line-26" target="_blank"&gt;installare&lt;/a&gt; il pacchetto &lt;code&gt;&lt;a href="apt:zenity"&gt;zenity&lt;/a&gt;&lt;/code&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_YBnmJTR73Is/SjJrwlAv3oI/AAAAAAAAAGI/9cJNGuCgWAA/s1600-h/tipo-file.png" target="_blank"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 400px; height: 235px;" src="http://2.bp.blogspot.com/_YBnmJTR73Is/SjJrwlAv3oI/AAAAAAAAAGI/9cJNGuCgWAA/s400/tipo-file.png" alt="" id="BLOGGER_PHOTO_ID_5346454189955341954" border="0" /&gt;&lt;/a&gt;Aprite un file vuoto con un &lt;a href="http://wiki.ubuntu-it.org/Ufficio/EditorDiTesto" target="_blank"&gt;editor di testo&lt;/a&gt; (come &lt;code&gt;&lt;a href="http://wiki.ubuntu-it.org/Ufficio/EditorDiTesto#line-18" target="_blank"&gt;gedit&lt;/a&gt;&lt;/code&gt;), copiate lo script nell'editor e salvatelo nella cartella &lt;code&gt;~/.gnome2/nautilus-scripts&lt;/code&gt; chiamandolo, per esempio, &lt;span style="font-weight: bold;"&gt;Tipo file&lt;/span&gt;. Rendete quindi eseguibile lo script facendo clic con il taso destro sul file (per accedere alla cartella &lt;code&gt;~/.gnome2&lt;/code&gt; dovete visualizzare i file nascosti premendo [ &lt;span style="font-weight: bold;"&gt;CTRL&lt;/span&gt; ] + [ &lt;span style="font-weight: bold;"&gt;H&lt;/span&gt; ]), scegliete &lt;span style="font-weight: bold;"&gt;Proprietà&lt;/span&gt; e quindi, nella scheda &lt;span style="font-weight: bold;"&gt;Permessi&lt;/span&gt;, mettete la spunta a &lt;span style="font-weight: bold;"&gt;Consentire l'esecuzione del file come programma&lt;/span&gt;. In questo modo, facendo clic con il tasto destro su un file di cui volete conoscere il tipo, vi basterà fare clic su &lt;span style="font-weight: bold;"&gt;Script&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;Tipo file&lt;/span&gt; (o il nome che avete dato allo script).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-9212637098089235106?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/9212637098089235106/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2009/06/scoprire-il-tipo-di-un-file.html#comment-form' title='2 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/9212637098089235106'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/9212637098089235106'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2009/06/scoprire-il-tipo-di-un-file.html' title='Scoprire il tipo di un file'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_YBnmJTR73Is/SjJrwlAv3oI/AAAAAAAAAGI/9cJNGuCgWAA/s72-c/tipo-file.png' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-4417827258004664190</id><published>2009-06-10T16:21:00.007+02:00</published><updated>2009-06-10T17:11:37.657+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='openoffice.org'/><category scheme='http://www.blogger.com/atom/ns#' term='problema'/><category scheme='http://www.blogger.com/atom/ns#' term='openoffice'/><category scheme='http://www.blogger.com/atom/ns#' term='calc'/><title type='text'>Spostamento celle verso il basso con Incolla speciale in Calc</title><content type='html'>In &lt;a href="http://it.openoffice.org/informazioni/prodotto/calc.html" target="_blank"&gt;Calc&lt;/a&gt; (il foglio elettronico della suite &lt;a href="http://it.openoffice.org/" target="_blank"&gt;OpenOffice.org&lt;/a&gt;) avevo necessità di&lt;br /&gt;· tagliare delle celle&lt;br /&gt;· incollarle in un'altra posizione spostando verso il basso le celle selezionate che contengono altri dati&lt;br /&gt;Questa operazione si potrebbe fare con la funzione &lt;span style="font-weight: bold;"&gt;Incolla speciale&lt;/span&gt;. In pratica basta selezionare le celle da tagliare, fare clic con il tasto destro e scegliere &lt;span style="font-weight: bold;"&gt;Taglia&lt;/span&gt;, quindi selezionare la posizione in cui incollare le celle  e, facendo clic con il tasto destro, scegliere &lt;span style="font-weight: bold;"&gt;Incolla speciale&lt;/span&gt;. In questo modo apparirà una finestra in basso a destra della quale si può scegliere di spostare in basso le celle selezionate. Il problema è che l'opzione &lt;span style="font-weight: bold;"&gt;Verso il basso&lt;/span&gt; non era selezionabile. Cercando su Google ho &lt;a href="http://markmail.org/message/honi6cdgpy3e4wtw" target="_blank"&gt;trovato&lt;/a&gt; un modo per aggirare il problema.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_YBnmJTR73Is/Si_HPGVodgI/AAAAAAAAAFA/Z7WbiIC3-Tw/s1600-h/screenshot_001.png" target="_blank"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 236px;" src="http://2.bp.blogspot.com/_YBnmJTR73Is/Si_HPGVodgI/AAAAAAAAAFA/Z7WbiIC3-Tw/s400/screenshot_001.png" alt="" id="BLOGGER_PHOTO_ID_5345710344925378050" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_YBnmJTR73Is/Si_HPXWYjhI/AAAAAAAAAFI/EyavZsRD2Ms/s1600-h/screenshot_002.png" target="_blank"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 236px;" src="http://3.bp.blogspot.com/_YBnmJTR73Is/Si_HPXWYjhI/AAAAAAAAAFI/EyavZsRD2Ms/s400/screenshot_002.png" alt="" id="BLOGGER_PHOTO_ID_5345710349491932690" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_YBnmJTR73Is/Si_HPoLgiCI/AAAAAAAAAFQ/3koCOQpMwAY/s1600-h/screenshot_003.png" target="_blank"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 232px;" src="http://4.bp.blogspot.com/_YBnmJTR73Is/Si_HPoLgiCI/AAAAAAAAAFQ/3koCOQpMwAY/s400/screenshot_003.png" alt="" id="BLOGGER_PHOTO_ID_5345710354009720866" border="0" /&gt;&lt;/a&gt;Bisogna incollare ugualmente, selezionando l'opzione &lt;span style="font-weight: bold;"&gt;Non spostare&lt;/span&gt;, anche se non è quello che vogliamo fare. Quindi nel popup che apparirà che chiederà conferma della sovrascrittura, fate clic su &lt;span style="font-weight: bold;"&gt;Sì&lt;/span&gt;.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_YBnmJTR73Is/Si_HP3yWwYI/AAAAAAAAAFY/0vfwUi8kBPo/s1600-h/screenshot_004.png" target="_blank"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 125px;" src="http://3.bp.blogspot.com/_YBnmJTR73Is/Si_HP3yWwYI/AAAAAAAAAFY/0vfwUi8kBPo/s400/screenshot_004.png" alt="" id="BLOGGER_PHOTO_ID_5345710358199189890" border="0" /&gt;&lt;/a&gt;In questo modo le celle saranno state, ovviamente, sovrascritte. A questo punto, annullate l'operazione (premendo i tasti [ &lt;span style="font-weight: bold;"&gt;CTRL&lt;/span&gt; ] + [ &lt;span style="font-weight: bold;"&gt;Z&lt;/span&gt; ] oppure da &lt;span style="font-weight: bold;"&gt;Modifica&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;Annulla Inserisci&lt;/span&gt;)  e, facendo clic con il tasto destro sulle celle da spostare, selezionate nuovamente &lt;span style="font-weight: bold;"&gt;Incolla speciale&lt;/span&gt;.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_YBnmJTR73Is/Si_KmXcF9mI/AAAAAAAAAFw/XnsnfKUM4-o/s1600-h/screenshot_005.png" target="_blank"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 236px;" src="http://4.bp.blogspot.com/_YBnmJTR73Is/Si_KmXcF9mI/AAAAAAAAAFw/XnsnfKUM4-o/s400/screenshot_005.png" alt="" id="BLOGGER_PHOTO_ID_5345714043187754594" border="0" /&gt;&lt;/a&gt;Magicamente, adesso sarà possibile scegliere l'opzione di spostamento verso il basso.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_YBnmJTR73Is/Si_Lp6uWnzI/AAAAAAAAAF4/wLdOzJQU1JI/s1600-h/screenshot_006.png" target="_blank"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 232px;" src="http://3.bp.blogspot.com/_YBnmJTR73Is/Si_Lp6uWnzI/AAAAAAAAAF4/wLdOzJQU1JI/s400/screenshot_006.png" alt="" id="BLOGGER_PHOTO_ID_5345715203710820146" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_YBnmJTR73Is/Si_Lp-2_S2I/AAAAAAAAAGA/dj38gaWEImw/s1600-h/screenshot_007.png" target="_blank"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 236px;" src="http://4.bp.blogspot.com/_YBnmJTR73Is/Si_Lp-2_S2I/AAAAAAAAAGA/dj38gaWEImw/s400/screenshot_007.png" alt="" id="BLOGGER_PHOTO_ID_5345715204820781922" border="0" /&gt;&lt;/a&gt;Il messaggio della mailing list dove ho trovato questo &lt;a href="http://en.wikipedia.org/wiki/Workaround" target="_blank"&gt;workaround&lt;/a&gt; risale al 2004, il problema nel frattempo non sembra essere stato risolto (se ho visto bene, comunque, è già stato segnalato agli sviluppatori). Inoltre, mi è sembrato che il difetto si verifichi solamente quando si tagliano delle celle, non quando vengono solamente copiate.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-4417827258004664190?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/4417827258004664190/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2009/06/spostamento-celle-verso-il-basso-con.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/4417827258004664190'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/4417827258004664190'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2009/06/spostamento-celle-verso-il-basso-con.html' title='Spostamento celle verso il basso con Incolla speciale in Calc'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_YBnmJTR73Is/Si_HPGVodgI/AAAAAAAAAFA/Z7WbiIC3-Tw/s72-c/screenshot_001.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-1529697600209064277</id><published>2009-06-05T19:33:00.008+02:00</published><updated>2009-09-12T13:32:39.503+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='video'/><category scheme='http://www.blogger.com/atom/ns#' term='lxde'/><category scheme='http://www.blogger.com/atom/ns#' term='minimale'/><category scheme='http://www.blogger.com/atom/ns#' term='pacchetti'/><category scheme='http://www.blogger.com/atom/ns#' term='terminale'/><category scheme='http://www.blogger.com/atom/ns#' term='screenshot'/><title type='text'>Catturare screenshot</title><content type='html'>Se utilizzate Ubuntu nella versione con &lt;a href="http://www.gnome.org/" target="_blank"&gt;GNOME&lt;/a&gt; come &lt;a href="http://it.wikipedia.org/wiki/Desktop_environment" target="_blank"&gt;ambiente desktop&lt;/a&gt; probabilmente avrete preinstallato il programma &lt;span style="font-weight: bold;font-family:Courier New;" &gt;gnome-screenshot&lt;/span&gt; per catturare le schermate del monitor (in inglese si chiamano &lt;a style="font-style: italic;" href="http://it.wikipedia.org/wiki/Screenshot" target="_blank"&gt;screenshot&lt;/a&gt;). Se non c'è, per ottenerlo è sufficiente installare il &lt;a href="apt:gnome-screenshot"&gt;pacchetto omonimo&lt;/a&gt; da &lt;a href="http://wiki.ubuntu-it.org/AmministrazioneSistema/Synaptic" target="_blank"&gt;Synaptic&lt;/a&gt; oppure da terminale con il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:Courier New;" &gt;sudo apt-get install gnome-screenshot&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Per catturare uno screenshot di tutto il monitor basta premere il tasto [ &lt;span style="font-weight: bold;"&gt;STAMP&lt;/span&gt; ], invece se si vuole catturare solo la schermata della finestra attiva bisogna premere insieme i tasti [ &lt;span style="font-weight: bold;"&gt;ALT&lt;/span&gt; ] + [ &lt;span style="font-weight: bold;"&gt;STAMP&lt;/span&gt; ]. Per utilizzare altre impostazioni (come l'inclusione del puntatore o del bordo di una finestra, oppure il ritardo con cui catturare una schermata) bisogna avviare il programma da &lt;span style="font-weight: bold;"&gt;Applicazioni&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;Accessori&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;Cattura schermata&lt;/span&gt;.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_YBnmJTR73Is/Si95GVifevI/AAAAAAAAAEo/0iP116L2oV8/s1600-h/gnome-screenshot.png" target="_blank"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 267px;" src="http://2.bp.blogspot.com/_YBnmJTR73Is/Si95GVifevI/AAAAAAAAAEo/0iP116L2oV8/s400/gnome-screenshot.png" alt="" id="BLOGGER_PHOTO_ID_5345624432480058098" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Esiste inoltre un altro programma che offre numerose opzioni in più: &lt;a href="http://shutter-project.org/" target="_blank"&gt;Shutter&lt;/a&gt; (precedentemente conosciuto come Gscrot). Shutter può essere installato aggiungendo un repository (&lt;a href="http://shutter-project.org/faq-help/ppa-installation-guide/" target="_blank"&gt;qui&lt;/a&gt; sono presenti le istruzioni in inglese per farlo) oppure direttamente dal pacchetto che si può scaricare da &lt;a href="http://shutter-project.org/downloads/" target="_blank"&gt;questa pagina&lt;/a&gt; nella sezione &lt;span style="font-weight: bold;"&gt;Ubuntu packages&lt;/span&gt; (è necessario scaricare tutti i pacchetti indicati per la propria versione del sistema). Shutter potrebbe richiedere l'installazione (che avverrà in automatico) di numerose dipendenze (a me per esempio ha dovuto installare 14 pacchetti mancanti). Una volta installato, Shutter può essere avviato da &lt;span style="font-weight: bold;"&gt;Applicazioni&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;Accessori&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;Shutter - Screenshot Tool&lt;/span&gt;. Il programma permette di scegliere il formato in cui salvare l'immagine, di quale finestra cattura la schermata (la rende attiva automaticamente), di quale desktop virtuale catturare un'intera schermata, inoltre offre la possibilità di selezionare un'area rettangolare dello schermo da salvare e modificare lo screenshot appena catturato con il programma di editing grafico preferito. &lt;a href="http://wiki.ubuntu-it.org/Grafica/Shutter"&gt;Qui&lt;/a&gt; potete trovare una breve guida in italiano per Shutter.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_YBnmJTR73Is/Si-DHFxiZgI/AAAAAAAAAEw/3N7d3nwxSi4/s1600-h/screenshot_002.png" target="_blank"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 400px; height: 254px;" src="http://4.bp.blogspot.com/_YBnmJTR73Is/Si-DHFxiZgI/AAAAAAAAAEw/3N7d3nwxSi4/s400/screenshot_002.png" alt="" id="BLOGGER_PHOTO_ID_5345635440544343554" border="0" /&gt;&lt;/a&gt;Utilizzando anche Ubuntu con &lt;a href="http://lxde.org/" target="_blank"&gt;LXDE&lt;/a&gt; come ambiente desktop, sono spesso alla ricerca di programmi quanto più leggeri ed essenziali possibile. Per catturare le schermate del desktop è possibile utilizzare da terminale il semplice programma &lt;a href="apt:import"&gt;&lt;span style="font-weight: bold;font-family:Courier New;" &gt;import&lt;/span&gt;&lt;/a&gt;. Può essere installato da Synaptic, oppure da terminale con il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:Courier New;" &gt;sudo apt-get install import&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Per utilizzarlo basta dare il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:Courier New;" &gt;import &lt;span style="font-style: italic;"&gt;nomefile&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;sostituendo a &lt;span style="font-weight: bold; font-style: italic;font-family:Courier New;" &gt;nomefile&lt;/span&gt; il nome che si desidera dare allo screenshot. Dopo aver dato il comando si dovrà selezionare l'area del desktop da catturare. L'immagine verrà salvata nella cartella in cui è posizionato il terminale (usare il comando &lt;span style="font-weight: bold;font-family:Courier New;" &gt;pwd&lt;/span&gt; per sapere qual è). È possibile usare qualche altra opzione, consultate il &lt;a href="http://manpages.ubuntu.com/manpages/intrepid/en/man1/import.1.html" target="_blank"&gt;manuale&lt;/a&gt; con il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:Courier New;" &gt;man import&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;per maggiori informazioni.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_YBnmJTR73Is/Si-KrWFVt7I/AAAAAAAAAE4/_DEcl-pE1mc/s1600-h/2009-06-10-122422_667x464_scrot.png" target="_blank"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 400px; height: 278px;" src="http://4.bp.blogspot.com/_YBnmJTR73Is/Si-KrWFVt7I/AAAAAAAAAE4/_DEcl-pE1mc/s400/2009-06-10-122422_667x464_scrot.png" alt="" id="BLOGGER_PHOTO_ID_5345643759979050930" border="0" /&gt;&lt;/a&gt;Un altro programma da utilizzare da terminale per catturare le schermate è &lt;a href="apt:scrot"&gt;&lt;span style="font-weight: bold;font-family:Courier New;" &gt;scrot&lt;/span&gt;&lt;/a&gt;. Come al solito, può essere installato da Synaptic, oppure da terminale con il con il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:Courier New;" &gt;sudo apt-get install scrot&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Per catturare immediatamente una schermata dell'intero schermo è sufficiente dare il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:Courier New;" &gt;scrot&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Con l'opzione &lt;span style="font-weight: bold;font-family:Courier New;" &gt;-s&lt;/span&gt; è possibile selezionare un'area rettangolare dello schermo da salvare (facendo semplicemente clic in una finestra verrà salvata quella finestra); l'opzione &lt;span style="font-weight: bold;font-family:Courier New;" &gt;-d &lt;span style="font-style: italic;"&gt;NUM&lt;/span&gt;&lt;/span&gt; permette di impostare un ritardo di &lt;span style="font-weight: bold; font-style: italic;font-family:Courier New;" &gt;NUM&lt;/span&gt; secondi prima di catturare lo screenshot; l'opzione &lt;span style="font-weight: bold;font-family:Courier New;" &gt;-c&lt;/span&gt; unitamente a &lt;span style="font-weight: bold;font-family:Courier New;" &gt;-d&lt;/span&gt; visualizza un conto alla rovescia prima della cattura della schermata (ricordo che le opzioni possono anche essere scritte tutte insieme, l'importante è che dopo l'opzione &lt;span style="font-weight: bold;font-family:Courier New;" &gt;-d&lt;/span&gt; ci sia il numero di secondi di ritardo). Altre opzioni di &lt;span style="font-weight: bold;font-family:Courier New;" &gt;scrot&lt;/span&gt; possono essere ottenute leggendo il &lt;a href="http://manpages.ubuntu.com/manpages/intrepid/en/man1/scrot.1.html" target="_blank"&gt;manuale&lt;/a&gt; con il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:Courier New;" &gt;man scrot&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-1529697600209064277?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/1529697600209064277/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2009/06/catturare-screenshot.html#comment-form' title='2 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/1529697600209064277'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/1529697600209064277'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2009/06/catturare-screenshot.html' title='Catturare screenshot'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_YBnmJTR73Is/Si95GVifevI/AAAAAAAAAEo/0iP116L2oV8/s72-c/gnome-screenshot.png' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-996358128517151206</id><published>2009-06-05T19:31:00.012+02:00</published><updated>2009-06-06T08:49:56.943+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='firefox'/><category scheme='http://www.blogger.com/atom/ns#' term='amministrazione'/><category scheme='http://www.blogger.com/atom/ns#' term='terminale'/><title type='text'>File e cartelle nascosti nella home</title><content type='html'>In genere per ogni utente di un sistema GNU/Linux è presente una cartella home, cioè una cartella sotto &lt;span style="font-weight: bold;font-family:Courier New;" &gt;/home&lt;/span&gt; che ha lo stesso nome dell'utente. Per esempio, se un utente del sistema si chiama &lt;span style="font-weight: bold;"&gt;pippo&lt;/span&gt;, esisterà una cartella il cui percorso è &lt;span style="font-weight: bold;font-family:Courier New;" &gt;/home/pippo&lt;/span&gt;. Spesso, per quanto riguarda la &lt;a href="http://it.wikipedia.org/wiki/Bash" target="_blank"&gt;bash&lt;/a&gt;, questa cartella viene indicata con la tilde &lt;span style="font-weight: bold;font-family:Courier New;" &gt;~&lt;/span&gt; oppure con la variabile &lt;span style="font-weight: bold;font-family:Courier New;" &gt;$HOME&lt;/span&gt;, che stanno entrambe a indicare proprio il percorso della cartella. Queste abbreviazioni risultano molto comode perché indicano sempre il percorso della cartella home dell'utente che sta utilizzando il sistema, indipendentemente dal nome dell'utente stesso.&lt;br /&gt;&lt;br /&gt;Generalmente, all'interno della home di ciascun utente si trovano numerosi file e cartelle, ma molti di questi sono nascosti. Un file (o cartella) nascosto in un sistema &lt;a href="http://it.wikipedia.org/wiki/Unix-like" target="_blank"&gt;di tipo Unix&lt;/a&gt; ha semplicemente un punto prima del proprio nome: in questo modo, navigando nella cartella il file (o cartella) nascosto non viene visualizzato in maniera predefinita. Proprio perché i nomi dei file nascosti iniziano con un punto in inglese vengono detti &lt;span style="font-style: italic;"&gt;dot files&lt;/span&gt; (che significa &lt;span style="font-style: italic;"&gt;file punto&lt;/span&gt;). In &lt;a href="http://it.wikipedia.org/wiki/Nautilus_%20%28software%29" target="_blank"&gt;Nautilus&lt;/a&gt;, il file manager predefinito di GNOME, per visualizzare gli eventuali file nascosti presenti in una cartella è sufficiente premere i tasti [ &lt;span style="font-weight: bold;"&gt;CTRL&lt;/span&gt; ] + [ &lt;span style="font-weight: bold;"&gt;H&lt;/span&gt; ] oppure fare clic su &lt;span style="font-weight: bold;"&gt;Visualizza&lt;/span&gt; e quindi selezionare &lt;span style="font-weight: bold;"&gt;Mostra file nascosti&lt;/span&gt;. Se invece state usando il terminale, il comando normalmente &lt;span style="font-weight: bold;font-family:Courier New;" &gt;ls&lt;/span&gt; non è in grado di elencare i file nascosti presenti in una cartella, bisogna usare l'opzione &lt;span style="font-weight: bold;font-family:Courier New;" &gt;-a&lt;/span&gt;, quindi il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:Courier New;" &gt;ls -a directory&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;elenca tutti i file, compresi quelli nascosti, presenti nella directory specificata.&lt;br /&gt;&lt;br /&gt;Molti dei programmi che si utilizzano quotidianamente salvano le configurazioni personalizzate di ciascun utente all'interno delle rispettive home in cartelle nascoste. Visualizzando i file nascosti della vostra home potrete riconoscere le cartelle di alcuni programmi. Se avete necessità di modificare direttamente il file di configurazione di un programma è probabile che il file si trovi nella cartella nascosta associata a quel software.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_YBnmJTR73Is/SimCqYSP3MI/AAAAAAAAAEg/m9B6naQ8h5c/s1600-h/synaptic-rimozione_completa.png" target="_blank"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 400px; height: 229px;" src="http://4.bp.blogspot.com/_YBnmJTR73Is/SimCqYSP3MI/AAAAAAAAAEg/m9B6naQ8h5c/s400/synaptic-rimozione_completa.png" alt="" id="BLOGGER_PHOTO_ID_5343946097436908738" border="0" /&gt;&lt;/a&gt;Quando si disinstalla un programma generalmente l'eventuale cartella presente nella home di quel programma non viene cancellata, per preservare le configurazioni qualora il programma venisse reinstallato successivamente. La cartella può essere cancellata manualmente dopo la rimozione di un programma, ma può anche essere fatto automaticamente: quando si rimuove un pacchetto da &lt;a href="http://wiki.ubuntu-it.org/AmministrazioneSistema/Synaptic" target="_blank"&gt;Synaptic&lt;/a&gt;, invece di selezionare l'opzione &lt;span style="font-weight: bold;"&gt;Marca per la rimozione&lt;/span&gt; bisogna scegliere &lt;span style="font-weight: bold;"&gt;Marca per la rimozione completa&lt;/span&gt;. Allo stesso modo, se si disinstalla un pacchetto da terminale e si vuole cancellare anche la cartella nascosta contenente le configurazioni, invece dell'usuale&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:Courier New;" &gt;sudo apt-get remove nomepacchetto&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;bisogna dare il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:Courier New;" &gt;sudo apt-get purge nomepacchetto&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;o, il che è lo stesso&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:Courier New;" &gt;sudo apt-get remove --purge nomepacchetto&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_YBnmJTR73Is/Sil8OrK_EOI/AAAAAAAAAEY/QgZc8Z0Eqjw/s1600-h/Firefox+-+Choose+User+Profile.png" target="_blank"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: left; cursor: pointer; width: 400px; height: 263px;" src="http://1.bp.blogspot.com/_YBnmJTR73Is/Sil8OrK_EOI/AAAAAAAAAEY/QgZc8Z0Eqjw/s400/Firefox+-+Choose+User+Profile.png" alt="" id="BLOGGER_PHOTO_ID_5343939024400617698" border="0" /&gt;&lt;/a&gt;In particolare, molto spesso problemi relativi a Firefox sono proprio collegati al profilo in uso, che si trova nel percorso &lt;span style="font-weight: bold;font-family:Courier New;" &gt;~/.mozilla/firefox/&lt;span style="font-style: italic;"&gt;nomeprofilo&lt;/span&gt;&lt;/span&gt; (usualmente il nome della cartella comprende una sequenza casuale di lettere e numeri seguita dal nome del profilo). Una soluzione sarebbe quella di cancellare tutta la cartella .mozilla, ma in questo modo si perderebbero tutti i plugin installati, i Segnalibri, le password salvate e la Cronologia. Un metodo più indolore consiste nel rinominare la cartella &lt;span style="font-weight: bold;"&gt;.mozilla&lt;/span&gt; (ma non cancellarla, per conservare Segnalibri &amp;amp; Co.): in questo modo, all'avvio successivo Firefox creerà automaticamente un nuovo profilo (e quindi una nuova cartella &lt;span style="font-weight: bold;"&gt;.mozilla/firefox&lt;/span&gt;). Un metodo alternativo a quest'ultimo consiste nel creare un nuovo profilo: per fare ciò bisogna avviare Firefox da terminale con l'opzione &lt;span style="font-weight: bold;"&gt;-ProfileManager&lt;/span&gt;:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:Courier New;" &gt;firefox -ProfileManager&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Nella finestra che si aprirà, fate clic su &lt;span style="font-weight: bold;"&gt;Create Profile&lt;/span&gt;. Se in questo modo il problema viene risolto, sarà possibile recuperare dalla cartella del profilo precedente (oppure nella cartella che era stata rinominata) i segnalibri (&lt;span style="font-weight: bold;"&gt;Segnalibri&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;Importa e salva&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;Ripristina&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;Seleziona file&lt;/span&gt;. Cercate la cartella &lt;span style="font-weight: bold;font-family:Courier New;" &gt;bookmarkbackups&lt;/span&gt; del profilo precedente e selezionate il file *.json più recente). A questo proposito potrebbe essere utile eseguire dei periodici backup del proprio profilo (per esempio con il plugin &lt;a href="https://addons.mozilla.org/it/firefox/addon/2109" target="_blank"&gt;FEBE&lt;/a&gt;).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-996358128517151206?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/996358128517151206/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2009/06/file-e-cartelle-nascosti-nella-home.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/996358128517151206'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/996358128517151206'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2009/06/file-e-cartelle-nascosti-nella-home.html' title='File e cartelle nascosti nella home'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_YBnmJTR73Is/SimCqYSP3MI/AAAAAAAAAEg/m9B6naQ8h5c/s72-c/synaptic-rimozione_completa.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-3068450033841377147</id><published>2009-06-05T17:08:00.002+02:00</published><updated>2009-06-05T17:12:21.658+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='pidgin'/><category scheme='http://www.blogger.com/atom/ns#' term='internet'/><category scheme='http://www.blogger.com/atom/ns#' term='pacchetti'/><title type='text'>BaShare: semplice programma per condividere file</title><content type='html'>Chi usa programmi di messaggistica istantanea come &lt;a href="http://pidgin.im/" target="_blank"&gt;Pidgin&lt;/a&gt; sa che i trasferimenti di file tramite protocollo &lt;a href="http://it.wikipedia.org/wiki/.NET_Messenger_Service" target="_blank"&gt;MSN&lt;/a&gt; sono molto lenti. Questo perché Pidgin non supporta la connessione diretta fra i due interlocutori per l'invio dei file (&lt;a href="http://developer.pidgin.im/ticket/247" target="_blank"&gt;segnalazione&lt;/a&gt; del bug sul sito ufficiale). Per risolvere questo problema (almeno quando si inviano file) si può usare il programma opensource &lt;a href="http://code.google.com/p/bashare/" target="_blank"&gt;BaShare&lt;/a&gt;, realizzato da &lt;a href="http://guiodic.wordpress.com/" target="_blank"&gt;Guiodic&lt;/a&gt;. Per l'utilizzo del programma non è necessario che il programma sia installato su tutti e due i computer che si scambiano i file (ovviamente è necessario almeno per chi invia il file).&lt;br /&gt;&lt;br /&gt;Nella &lt;a href="http://code.google.com/p/bashare/downloads/list" target="_blank"&gt;pagina dei download&lt;/a&gt; potete trovare, oltre al sorgente, i pacchetti già compilati per diverse distribuzioni, compresa Ubuntu.&lt;br /&gt;&lt;br /&gt;Chi utilizza un router potrebbe aver bisogno di scaricare Miniupnpc per aprire automaticamente la porta TCP.&lt;br /&gt;&lt;br /&gt;Sul forum in italiano di Ubuntu è presente una discussione su questo programma: &lt;a href="http://forum.ubuntu-it.org/index.php/topic,261426.0.html" target="_blank"&gt;http://forum.ubuntu-it.org/index.php/topic,261426.0.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-3068450033841377147?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/3068450033841377147/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2009/06/bashare-semplice-programma-per.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/3068450033841377147'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/3068450033841377147'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2009/06/bashare-semplice-programma-per.html' title='BaShare: semplice programma per condividere file'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-7393016170993738494</id><published>2009-06-05T16:31:00.007+02:00</published><updated>2010-06-30T23:52:39.772+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='caratteri'/><category scheme='http://www.blogger.com/atom/ns#' term='tastiera'/><category scheme='http://www.blogger.com/atom/ns#' term='pacchetti'/><title type='text'>Inserire caratteri Unicode</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_YBnmJTR73Is/SikcW7aFanI/AAAAAAAAAD4/yGv6ftqy00c/s1600-h/Schermata-Tabella+caratteri.png" target="_blank"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: right; cursor: pointer; width: 400px; height: 229px;" src="http://4.bp.blogspot.com/_YBnmJTR73Is/SikcW7aFanI/AAAAAAAAAD4/yGv6ftqy00c/s400/Schermata-Tabella+caratteri.png" alt="" id="BLOGGER_PHOTO_ID_5343833613081602674" border="0" /&gt;&lt;/a&gt;Per inserire dei caratteri &lt;a href="http://it.wikipedia.org/wiki/Unicode" target="_blank"&gt;Unicode&lt;/a&gt; si può usare il comodo programma &lt;a href="http://live.gnome.org/Gucharmap" target="_blank"&gt;Gucharmap&lt;/a&gt; che fornisce una mappa dei caratteri Unicode disponibili mostrando anche una breve descrizione per ciascuno di essi. Il programma, preinstallato su Ubuntu con GNOME come ambiente desktop, se non presente può essere ottenuto installando, da &lt;a href="http://wiki.ubuntu-it.org/AmministrazioneSistema/Synaptic" target="_blank"&gt;Synaptic&lt;/a&gt; o da terminale, il pacchetto &lt;a href="apt:gucharmap"&gt;&lt;span style="font-weight: bold;"&gt;gucharmap&lt;/span&gt;&lt;/a&gt;. Il comando da dare nel terminale per installarlo è&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:Courier New;" &gt;sudo apt-get install gucharmap&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Per avviarlo potete andare in &lt;span style="font-weight: bold;"&gt;Applicazioni&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;Accessori&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;Tabella carattere&lt;/span&gt;, oppure è possibile invocarlo tramite terminale con il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:Courier New;" &gt;gucharmap&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Facendo doppio clic sul carattere da inserire, questo comparirà nella barra "Testo da copiare:" e facendo clic sul pulsante &lt;span style="font-weight: bold;"&gt;Copia&lt;/span&gt; i caratteri lì presenti verranno salvati negli appunti e potrete quindi incollare i caratteri dove vi servono.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_YBnmJTR73Is/Sikj6IB7ZDI/AAAAAAAAAEA/atlmActTWMQ/s1600-h/unicode+-+gedit.png" target="_blank"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 349px; height: 244px;" src="http://3.bp.blogspot.com/_YBnmJTR73Is/Sikj6IB7ZDI/AAAAAAAAAEA/atlmActTWMQ/s400/unicode+-+gedit.png" alt="" id="BLOGGER_PHOTO_ID_5343841914346759218" border="0" /&gt;&lt;/a&gt;Se però avete necessità di inserire spesso alcuni caratteri particolari e non volete ogni volta aprire Gucharmap, conoscendo il codice Unicode potete farlo semplicemente da tastiera. Bisogna premere contemporaneamente i tasti [ &lt;span style="font-weight: bold;"&gt;CTRL&lt;/span&gt; ] + [ &lt;span style="font-weight: bold;"&gt;SHIFT&lt;/span&gt; ] + [ &lt;span style="font-weight: bold;"&gt;U&lt;/span&gt; ], rilasciare i tasti (a questo punto vi comparirà una &lt;u&gt;u&lt;/u&gt; sottolineata: non cancellatela!), scrivere il codice esadecimale del carattere e premere [ &lt;span style="font-weight: bold;"&gt;Invio&lt;/span&gt; ]. Per esempio, volendo inserire il carattere selezionato nell'immagine precedente (che rappresenta una tastiera), vediamo in basso a destra della schermata di Gucharmap che il codice esadecimale associato è 2328. Quindi per inserire quel carattere bisogna premere contemporaneamente [ &lt;span style="font-weight: bold;"&gt;CTRL&lt;/span&gt; ] + [ &lt;span style="font-weight: bold;"&gt;SHIFT&lt;/span&gt; ] + [ &lt;span style="font-weight: bold;"&gt;U&lt;/span&gt; ], rilasciare i tasti, scrivere &lt;span style="font-weight: bold;"&gt;2328&lt;/span&gt; e quindi premere [ &lt;span style="font-weight: bold;"&gt;Invio&lt;/span&gt; ]. Nell'immagine sulla sinistra c'è un esempio relativo all'inserimento del simbolo dell'integrale triplo il cui codice Unicode è 222D (nell'inserire il codice esadecimale le lettere possono anche essere minuscole, è indifferente).&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_YBnmJTR73Is/Sikp-jFh9tI/AAAAAAAAAEI/OcT66-1jUB0/s1600-h/linuxkeyboard.png" target="_blank"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 400px; height: 258px;" src="http://3.bp.blogspot.com/_YBnmJTR73Is/Sikp-jFh9tI/AAAAAAAAAEI/OcT66-1jUB0/s400/linuxkeyboard.png" alt="" id="BLOGGER_PHOTO_ID_5343848587398870738" border="0" /&gt;&lt;/a&gt;Alcuni dei caratteri Unicode che si possono aggiungere con la combinazione [ &lt;span style="font-weight: bold;"&gt;CTRL&lt;/span&gt; ] + [ &lt;span style="font-weight: bold;"&gt;SHIFT&lt;/span&gt; ] + [ &lt;span style="font-weight: bold;"&gt;U&lt;/span&gt; ] seguito dal codice Unicode (ma ovviamente non tutti, i caratteri Unicode sono oltre 100.000!) si possono inserire premendo [ &lt;span style="font-weight: bold;"&gt;ALT GR&lt;/span&gt; ] o [ &lt;span style="font-weight: bold;"&gt;ALT GR&lt;/span&gt; ] + [ &lt;span style="font-weight: bold;"&gt;SHIFT&lt;/span&gt; ] più una particolare lettera o numero. I tasti vanno tutti premuti contemporaneamente. Per esempio, per inserire il carattere &lt;span style="font-weight: bold;"&gt;æ&lt;/span&gt; è sufficiente premere insieme [ &lt;span style="font-weight: bold;"&gt;ALT GR&lt;/span&gt; ] + [ &lt;span style="font-weight: bold;"&gt;A&lt;/span&gt; ], mentre per il simbolo &lt;span style="font-weight: bold;"&gt;®&lt;/span&gt; bisogna premere contemporaneamente [ &lt;span style="font-weight: bold;"&gt;ALT GR&lt;/span&gt; ] + [ &lt;span style="font-weight: bold;"&gt;SHIFT&lt;/span&gt; ] + [ &lt;span style="font-weight: bold;"&gt;R&lt;/span&gt; ]. Il simbolo tilde &lt;span style="font-weight: bold;"&gt;~&lt;/span&gt;, molto usato, si ottiene premendo [ &lt;span style="font-weight: bold;"&gt;ALT GR&lt;/span&gt; ] + [ &lt;span style="font-weight: bold;"&gt;ì&lt;/span&gt; ]. Inoltre attivando il &lt;a style="font-weight: bold;" href="http://en.wikipedia.org/wiki/Caps_lock" target="_blank"&gt;Caps lock&lt;/a&gt; è possibile scrivere le lettere maiuscole accentate. Così, per avere la &lt;span style="font-weight: bold;"&gt;È&lt;/span&gt; (E con accento grave) basta attivare il &lt;span style="font-weight: bold;"&gt;Caps lock&lt;/span&gt; e premere [ &lt;span style="font-weight: bold;"&gt;è&lt;/span&gt; ]. Invece per la &lt;span style="font-weight: bold;"&gt;É&lt;/span&gt; (E con accento acuto) bisogna attivare il &lt;span style="font-weight: bold;"&gt;Caps lock&lt;/span&gt; e premere [ &lt;span style="font-weight: bold;"&gt;SHIFT&lt;/span&gt; ] + [ &lt;span style="font-weight: bold;"&gt;è&lt;/span&gt; ] (infatti la &lt;span style="font-weight: bold;"&gt;é&lt;/span&gt; si ottiene con [ &lt;span style="font-weight: bold;"&gt;SHIFT&lt;/span&gt; ] + [ &lt;span style="font-weight: bold;"&gt;è&lt;/span&gt; ]).&lt;br /&gt;&lt;br /&gt;Un'utile immagine (realizzata da Giorgio Polvara che l'ha distribuita con licenza &lt;a href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.it" target="_blank"&gt;CC-BY-NC-SA&lt;/a&gt;) che illustra i caratteri che si possono ottenere con le combinazioni di tasti di [ &lt;span style="font-weight: bold;"&gt;ALT GR&lt;/span&gt; ] si trova(va) all'indirizzo &lt;a href="https://dl.getdropbox.com/u/235886/linuxkeyboard.png" target="_blank"&gt;https://dl.getdropbox.com/u/235886/linuxkeyboard.png&lt;/a&gt;&lt;br /&gt;Con queste combinazioni è possibile anche inserire facilmente lettere con dei particolari simboli come la dieresi.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-7393016170993738494?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/7393016170993738494/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2009/05/inserire-caratteri-unicode.html#comment-form' title='1 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/7393016170993738494'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/7393016170993738494'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2009/05/inserire-caratteri-unicode.html' title='Inserire caratteri Unicode'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_YBnmJTR73Is/SikcW7aFanI/AAAAAAAAAD4/yGv6ftqy00c/s72-c/Schermata-Tabella+caratteri.png' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-8904536435169664333</id><published>2009-04-27T00:32:00.006+02:00</published><updated>2009-08-28T00:35:37.821+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='internet'/><category scheme='http://www.blogger.com/atom/ns#' term='wireless'/><category scheme='http://www.blogger.com/atom/ns#' term='atheros'/><category scheme='http://www.blogger.com/atom/ns#' term='wifi'/><category scheme='http://www.blogger.com/atom/ns#' term='pacchetti'/><category scheme='http://www.blogger.com/atom/ns#' term='amministrazione'/><category scheme='http://www.blogger.com/atom/ns#' term='terminale'/><category scheme='http://www.blogger.com/atom/ns#' term='driver'/><title type='text'>Driver per scheda wireless Atheros AR242x su Ubuntu 9.04</title><content type='html'>&lt;span style="font-weight: bold;"&gt;&lt;span style="font-style: italic;"&gt;Per installare il driver sui sistemi Ubuntu 8.04 oppure 8.10 consultate questa guida: &lt;a tooltip="linkalert-tip" style="" href="http://elubuntu.blogspot.com/2009/02/installare-driver-per-scheda-wireless.html"&gt;http://elubuntu.blogspot.com/2009/02/installare-driver-per-scheda-wireless.html&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Sul sistema Ubuntu Jaunty Jackalope appena installato, la mia scheda wireless Atheros AR242x era già funzionante, quindi non ho avuto bisogno di installare nulla di nuovo.&lt;br /&gt;&lt;br /&gt;Se qualcuno avesse comunque la necessità di installare il driver per questa scheda su Ubuntu 9.04, la procedura dovrebbe essere del tutto analoga a quella per il sistema Ubuntu 8.10 (non ho avuto la necessità di eseguirla e non l'ho testata personalmente, ma leggendo in giro dovrebbe funzionare). Riporto per completezza tutte le operazioni da eseguire.&lt;br /&gt;&lt;br /&gt;Per prima cosa vi serve sapere quale scheda wireless avete sul vostro pc. Per fare ciò, nel terminale digitate&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:Courier New;" &gt;lspci&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Se avete una scheda wireless come la mia, a un certo punto dovreste trovare una stringa tipo questa:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:Courier New;" &gt;03:00.0 Ethernet controller: Atheros Communications Inc. AR242x 802.11abg Wireless PCI Express Adapter (rev 01)&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Se vi spaventa mettervi a cercare quella stringa in tutto l'output di &lt;span style="font-weight: bold;font-family:Courier New;" &gt;lspci&lt;/span&gt; fate la ricerca in questo modo:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:Courier New;" &gt;lspci | grep Atheros&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Se avete quindi trovato la mia stessa scheda potete seguire queste guide. La guida è valida anche per schede &lt;span style="font-weight: bold;font-family:courier new;" &gt;AR5007eg&lt;/span&gt;. Se avete già installato altri driver che però non funzionano vi conviene rimuoverli prima di procedere (&lt;span style="font-weight: bold;"&gt;Sistema&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;Amministrazione&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;Driver hardware&lt;/span&gt;).&lt;br /&gt;&lt;br /&gt;La procedura di installazione del driver è molto semplice, dove però prima attivare, se non l'avete già fatto, i repository &lt;a target="_blank" href="http://wiki.ubuntu-it.org/Repository/Backports"&gt;Backports&lt;/a&gt;: &lt;span style="font-weight: bold;"&gt;Sistema&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;Amministrazione&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;Sorgenti software&lt;/span&gt; e nella scheda Aggiornamenti mettete la spunta a &lt;span style="font-weight: bold;"&gt;Aggiornamenti non supportati (jaunty-backports)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a tooltip="linkalert-tip" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_YBnmJTR73Is/SZhIM-bwLSI/AAAAAAAAAA0/gDaibYTDjIk/s1600-h/attivazione-backports.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 315px;" src="http://2.bp.blogspot.com/_YBnmJTR73Is/SZhIM-bwLSI/AAAAAAAAAA0/gDaibYTDjIk/s400/attivazione-backports.png" alt="" id="BLOGGER_PHOTO_ID_5303067948983790882" border="0" /&gt;&lt;/a&gt;(l'immagine fa riferimento a Ubuntu 8.10)&lt;/div&gt;Quindi installate il pacchetto &lt;span style="font-weight: bold;font-family:Courier New;" &gt;linux-backports-modules-jaunty&lt;/span&gt; con &lt;a href="http://wiki.ubuntu-it.org/AmministrazioneSistema/Synaptic"&gt;Synaptic&lt;/a&gt;, oppure via terminale con questo comando:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:Courier New;" &gt;sudo apt-get install linux-backports-modules-jaunty&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;o cliccando &lt;a href="apt:linux-backports-modules-intrepid"&gt;qui&lt;/a&gt;. Riavviate il computer e il gioco è fatto!&lt;br /&gt;Se dopo il riavvio il driver continua a non funzionare controllate che il driver non sia incluso nella &lt;a href="http://it.wikipedia.org/wiki/Blacklist" target="_blank"&gt;blacklist&lt;/a&gt; dei moduli (cioè la lista nera dei moduli del &lt;a href="http://it.wikipedia.org/wiki/Kernel" target="_blank"&gt;kernel&lt;/a&gt; che non devono essere caricati). Per effettuare la ricerca, potete utilizzare Tracker, oppure il terminale con il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:Courier New;" &gt;grep -r "&lt;/span&gt;&lt;span style="font-weight: bold;font-family:Courier New;" &gt;blacklist ath5k&lt;/span&gt;&lt;span style="font-weight: bold;font-family:Courier New;" &gt;" /etc/modprobe.d/&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Segnatevi i file che ottenete come risultato, apriteli da terminale con il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:Courier New;" &gt;gksudo gedit &lt;span style="font-style: italic;"&gt;nomefile&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;e &lt;a href="http://it.wikipedia.org/wiki/Commento_%28informatica%29" target="_blank"&gt;commentate&lt;/a&gt; (cioè aggiungete il simbolo cancelletto &lt;span style="font-weight: bold;"&gt;#&lt;/span&gt; a inizio riga) le righe che contengono&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:Courier New;" &gt;blacklist ath5k&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Se ancora, dopo il riavvio, la scheda wireless non sembra dare segni di vita, provate a blacklistare  altri driver per questa scheda wireless (cioè aggiungete i moduli relativi a questi driver nella lista nera e in questo modo non verranno caricati), per evitare che entrino in conflitto con quello appena installato: alla fine del file &lt;span style="font-weight: bold;font-family:Courier New;" &gt;/etc/modprobe.d/blacklist&lt;/span&gt; aggiungete il seguente testo&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:Courier New;" &gt;# driver madwifi atheros&lt;br /&gt;blacklist ath_pci&lt;br /&gt;blacklist ath_hal&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Poiché non potete modificare direttamente il file, dovete aprirlo tramite terminale attraverso il comando &lt;a style="font-weight: bold; font-family: Courier New;" target="_blank" href="http://wiki.ubuntu-it.org/AmministrazioneSistema/Sudo"&gt;gksudo&lt;/a&gt; (sostitute a gedit il nome del vostro editor preferito se non avete &lt;span style="font-weight: bold;font-family:courier new;" &gt;gedit&lt;/span&gt; installato; potete anche usare l'editor da terminale &lt;span style="font-weight: bold;font-family:courier new;" &gt;nano&lt;/span&gt;):&lt;br /&gt;&lt;div style="margin-left: 40px; font-weight: bold; font-family: Courier New;"&gt;gksudo gedit /etc/modprobe.d/blacklist&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Il post è stato modificato l'ultima volta il 21 luglio 2009&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-8904536435169664333?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/8904536435169664333/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2009/04/driver-per-scheda-wireless-atheros.html#comment-form' title='8 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/8904536435169664333'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/8904536435169664333'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2009/04/driver-per-scheda-wireless-atheros.html' title='Driver per scheda wireless Atheros AR242x su Ubuntu 9.04'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_YBnmJTR73Is/SZhIM-bwLSI/AAAAAAAAAA0/gDaibYTDjIk/s72-c/attivazione-backports.png' height='72' width='72'/><thr:total>8</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-1329844700514094302</id><published>2009-04-25T19:11:00.010+02:00</published><updated>2009-10-17T14:56:18.584+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='lxde'/><category scheme='http://www.blogger.com/atom/ns#' term='minimale'/><category scheme='http://www.blogger.com/atom/ns#' term='avanzamento versione'/><category scheme='http://www.blogger.com/atom/ns#' term='pacchetti'/><category scheme='http://www.blogger.com/atom/ns#' term='amministrazione'/><category scheme='http://www.blogger.com/atom/ns#' term='terminale'/><title type='text'>Avanzamento di versione su installazione minimale</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://commons.wikimedia.org/wiki/File:LXDE_logo.jpg" target="_blank"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 180px; height: 135px;" src="http://upload.wikimedia.org/wikipedia/commons/thumb/6/63/LXDE_logo.jpg/180px-LXDE_logo.jpg" alt="" border="0" /&gt;&lt;/a&gt;Pochi giorni fa volevo eseguire l'avanzamento di versione da Intrepid a Jaunty su un computer su cui ho installato una versione &lt;a href="http://wiki.ubuntu-it.org/Installazione/CdMinimale" target="_blank"&gt;minimale&lt;/a&gt; che utilizza come ambiente desktop &lt;a href="http://lxde.org/" target="_blank"&gt;LXDE&lt;/a&gt;. Tutte le guide che avevo trovato suggerivano di aprire &lt;span style="font-weight: bold;font-family:Courier New;" &gt;update-manager&lt;/span&gt; (il gestore degli aggiornamenti presente su &lt;a href="http://www.gnome.org/" target="_blank"&gt;GNOME&lt;/a&gt;) ed eseguire l'aggiornamento. Io però non avevo intenzione di installare &lt;span style="font-weight: bold;font-family:Courier New;" &gt;update-manager&lt;/span&gt; perché si porta dietro alcuni altri pacchetti, non molti a dir la verità, ma su un sistema minimale vorrei avere lo stretto indispensabile!&lt;br /&gt;&lt;br /&gt;Sul &lt;a href="http://forum.ubuntu-it.org/index.php/topic,271958.msg2023907.html#msg2023907" target="_blank"&gt;forum di Ubuntu&lt;/a&gt; ho quindi scoperto che basta installare solo il pacchetto &lt;span style="font-weight: bold;font-family:Courier New;" &gt;update-manager-core&lt;/span&gt;, cioè lo stesso che serve per eseguire l'aggiornamento sui &lt;a href="http://wiki.ubuntu-it.org/Installazione/AggiornamentoJaunty#head-9c809a2d7b2bb716727bd8b4b4a3503b0fed715d" target="_blank"&gt;server&lt;/a&gt; (e che, per la cronaca, è anche una dipendenza di &lt;span style="font-weight: bold;font-family:Courier New;" &gt;update-manager&lt;/span&gt;). La procedura di installazione avviene tramite interfaccia a linea di comando, non grafica. Se il terminale vi spaventa o ve ne fate una ragione oppure installate &lt;span style="font-weight: bold;font-family:Courier New;" &gt;update-manager&lt;/span&gt;, comunque non c'è niente di difficile nel fare l'aggiornamento con questo metodo.&lt;br /&gt;&lt;br /&gt;Il pacchetto &lt;span style="font-weight: bold;font-family:Courier New;" &gt;update-manager-core&lt;/span&gt; può essere ottenuto tramite &lt;a href="http://wiki.ubuntu-it.org/AmministrazioneSistema/Synaptic" target="_blank"&gt;Synaptic&lt;/a&gt; (se è installato), oppure nel terminale con il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:Courier New;" &gt;sudo apt-get install &lt;a href="apt:update-manager-core"&gt;update-manager-core&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Per effettuare l'aggiornamento del sistema è sufficiente dare il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:Courier New;" &gt;sudo do-release-upgrade&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;e seguire le istruzioni a video. Se dovete avanzare a una versione di sviluppo di Ubuntu (quindi una versione Alpha, Beta o Release Candidate) allora è necessario aggiungere l'opzione &lt;span style="font-weight: bold;font-family:Courier New;" &gt;--devel-release&lt;/span&gt; (che può essere abbreviata con &lt;span style="font-weight: bold;font-family:Courier New;" &gt;-d&lt;/span&gt;):&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:Courier New;" &gt;sudo do-release-upgrade -d&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;come spiegato, per esempio, &lt;a href="http://www.ubuntu.com/testing/jaunty/beta"&gt;qui&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-1329844700514094302?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/1329844700514094302/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2009/04/avanzamento-di-versione-su.html#comment-form' title='1 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/1329844700514094302'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/1329844700514094302'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2009/04/avanzamento-di-versione-su.html' title='Avanzamento di versione su installazione minimale'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-4242292977970563841</id><published>2009-04-18T00:39:00.006+02:00</published><updated>2009-08-28T00:35:47.073+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='problema'/><category scheme='http://www.blogger.com/atom/ns#' term='at'/><category scheme='http://www.blogger.com/atom/ns#' term='amministrazione'/><category scheme='http://www.blogger.com/atom/ns#' term='terminale'/><title type='text'>[Risolto] Problema con at: «Cannot open lockfile /var/spool/cron/atjobs/.SEQ: No such file or directory»</title><content type='html'>Stasera volevo provare il comando &lt;span style="font-weight: bold;font-family:courier new;" &gt;&lt;a href="http://manpages.ubuntu.com/manpages/jaunty/en/man1/at.1.html" target="_blank"&gt;at&lt;/a&gt;&lt;/span&gt; che serve per eseguire comandi a un orario specificato. Per esempio volevo eseguire immediatamente uno script bash che si trova nella Scrivania (ovviamente per fare questo non è necessario &lt;span style="font-weight: bold;font-family:courier new;" &gt;at&lt;/span&gt;, era giusto per vedere come funziona). Per fare ciò si può dare il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;echo "~/Scrivania/script.sh" | at now&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;però il terminale mi ha risposto in questo modo:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;warning: commands will be executed using /bin/sh&lt;br /&gt;Cannot open lockfile /var/spool/cron/atjobs/.SEQ: No such file or directory&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;bash: echo: errore di scrittura: Pipe interrotta&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Il primo messaggio non è preoccupato, non mi è piaciuto invece il secondo. Ci dice che il file &lt;span style="font-weight: bold;font-family:courier new;" &gt;/var/spool/cron/atjobs/.SEQ&lt;/span&gt; non può essere aperto semplicemente perché non esiste. Ho quindi creato un file vuoto con quel nome con il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo touch /var/spool/cron/atjobs/.SEQ&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Dando nuovamente il comando &lt;span style="font-weight: bold;font-family:courier new;" &gt;at&lt;/span&gt;, però, ho ricevuto questo output:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;warning: commands will be executed using /bin/sh&lt;br /&gt;Cannot open lockfile /var/spool/cron/atjobs/.SEQ: Permission denied&lt;br /&gt;bash: echo: errore di scrittura: Pipe interrotta&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;A questo punto mi è arrivato in soccorso &lt;a href="http://www.google.it/" target="_blank"&gt;google&lt;/a&gt;: ho scoperto che si trattava di un problema di permessi. Quando ho creato il file con il comando &lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo touch&lt;/span&gt; il proprietario del file è stato impostato a &lt;span style="font-weight: bold;font-family:courier new;" &gt;root&lt;/span&gt; (come anche il gruppo, queste informazioni posso essere viste con il comando &lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo ls -l /var/spool/cron/atjobs/.SEQ&lt;/span&gt;). Invece il proprietario e il gruppo del file dovrebbero essere &lt;span style="font-weight: bold;font-family:courier new;" &gt;daemon&lt;/span&gt;. Per modificare il proprietario e il gruppo del file ho dato il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo chown daemon:daemon /var/spool/cron/atjobs/.SEQ&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;e finalmente ho potuto provare il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;echo "~/Scrivania/script.sh" | at now&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;dopo cui è comparso&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;warning: commands will be executed using /bin/sh&lt;br /&gt;job 1 at Sat Apr 18 00:18:00 2009&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Il sito che ho consultato per risolvere questo problema è &lt;a href="http://www.mail-archive.com/debian-bugs-dist@lists.debian.org/msg78730.html" target="_blank"&gt;http://www.mail-archive.com/debian-bugs-dist@lists.debian.org/msg78730.html&lt;/a&gt;. Faccio notare che l'autore di quel messaggio ha dovuto eseguire un'ulteriore operazione oltre a quelle che ho indicato. Se le istruzioni che ho esposto non sono state sufficienti date un'occhiata lì.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-4242292977970563841?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/4242292977970563841/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2009/04/problema-con-at-cannot-open-lockfile.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/4242292977970563841'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/4242292977970563841'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2009/04/problema-con-at-cannot-open-lockfile.html' title='[Risolto] Problema con at: «Cannot open lockfile /var/spool/cron/atjobs/.SEQ: No such file or directory»'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-5698541355282674448</id><published>2009-04-17T14:53:00.013+02:00</published><updated>2010-11-12T20:35:50.150+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cups'/><category scheme='http://www.blogger.com/atom/ns#' term='problema'/><category scheme='http://www.blogger.com/atom/ns#' term='stampa'/><category scheme='http://www.blogger.com/atom/ns#' term='amministrazione'/><category scheme='http://www.blogger.com/atom/ns#' term='terminale'/><title type='text'>[Risolto] Problema con cupsd: «Child exited with status 1!»</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://commons.wikimedia.org/wiki/File:Gnome-dev-printer.svg" target="_blank"&gt;&lt;img tooltip="linkalert-tip" style="margin: 0pt 10px 10px 0pt; float: right; cursor: pointer; width: 180px; height: 180px;" src="http://upload.wikimedia.org/wikipedia/commons/thumb/5/5d/Gnome-dev-printer.svg/180px-Gnome-dev-printer.svg.png" alt="" border="0" /&gt;&lt;/a&gt;A ogni avvio del sistema mi compariva il messaggio&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;cupsd: Child exited with status 1!&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;(per maggiori informazioni su &lt;a tooltip="linkalert-tip" href="http://www.cups.org/" target="_blank"&gt;CUPS&lt;/a&gt; potete vedere &lt;a style="" href="http://wiki.ubuntu-it.org/Server/Stampa" target="_blank"&gt;qui&lt;/a&gt;). Ho controllato i &lt;a tooltip="linkalert-tip" href="http://wiki.ubuntu-it.org/AmministrazioneSistema/LogDiSistema" target="_blank"&gt;log&lt;/a&gt; relativi a &lt;a tooltip="linkalert-tip" href="http://wiki.ubuntu-it.org/Server/Stampa#head-10edc874255b67206768379e1a39ccae6779cb1f" target="_blank"&gt;CUPS&lt;/a&gt; con il comando nel terminale&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;cat /var/log/cups/error_log&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;(se non amate leggere file sul terminale potete anche aprire il file &lt;span style="font-weight: bold;font-family:courier new;" &gt;/var/log/cups/error_log&lt;/span&gt; con un &lt;a tooltip="linkalert-tip" href="http://wiki.ubuntu-it.org/Ufficio/EditorDiTesto"&gt;editor di testo &lt;/a&gt;qualsiasi). Ho potuto ammirare una lunga sfilza di messaggi di errore di questo tipo:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;E [17/Apr/2009:14:14:18 +0200] "/etc/cups/ssl/server.crt" is a bad symlink - No such file or directory&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Perciò ho controllato cosa avesse il file &lt;span style="font-weight: bold;font-family:courier new;" &gt;/etc/cups/ssl/server.crt&lt;/span&gt; che non andava. Il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo file /etc/cups/ssl/server.crt&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;mi ha restituito questo output:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;/etc/cups/ssl/server.crt: broken symbolic link to `/etc/ssl/certs/ssl-cert-snakeoil.pem'&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Nella stessa cartella del file &lt;span style="font-weight: bold;font-family:courier new;" &gt;server.crt&lt;/span&gt; era presente anche un altro file chiamato &lt;span style="font-weight: bold;font-family:courier new;" &gt;server.key&lt;/span&gt;:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo file /etc/cups/ssl/server.key&lt;span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;Risultato:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;/etc/cups/ssl/server.key: broken symbolic link to `/etc/ssl/private/ssl-cert-snakeoil.key'&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Ho quindi cancellato i due file che erano solo dei &lt;a href="http://it.wikipedia.org/wiki/Collegamento_simbolico" target="_blank"&gt;link simbolici&lt;/a&gt; non funzionanti. Prima, però, ho per sicurezza creato una copia di quei file, non si sa mai:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo cp -pr /etc/cups/ssl/ $HOME&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;e poi ho rimossi i file nella cartella &lt;span style="font-weight: bold;font-family:courier new;" &gt;/etc/cups/ssl/&lt;/span&gt; (non la loro copia di backup salvata nella home) con il comando:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo rm /etc/cups/ssl/server.crt /etc/cups/ssl/server.key&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;A questo punto ho riavviato cups con il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo /etc/init.d/cups restart&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;e il messaggio&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;* Restarting Common Unix Printing System: cupsd                         [ OK ]&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;mi ha fatto capire che tutto era andato bene e ho potuto cancellare la copia di sicurezza della cartella &lt;span style="font-weight: bold;font-family:courier new;" &gt;/etc/cups/ssl/&lt;/span&gt; con il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo rm -rf $HOME/ssl/&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Esiste anche una soluzione (alternativa a quella precedente, non c'è bisogno di seguirle tutte e due) meno violenta per i file &lt;span style="font-weight: bold;font-family:courier new;" &gt;server.crt&lt;/span&gt; e &lt;span style="font-weight: bold;font-family:courier new;" &gt;server.key&lt;/span&gt;: semplicemente creare i file mancanti. Si può fare almeno in due modi differenti (sempre attraverso comandi nel terminale):&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;cd /etc/ssl/certs/&lt;br /&gt;sudo make-ssl-cert generate-default-snakeoil&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;oppure reinstallando il pacchetto &lt;span style="font-weight: bold;font-family:courier new;" &gt;ssl-cert&lt;/span&gt;:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo apt-get install --reinstall ssl-cert&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Anche dopo queste operazioni va dato il comando per riavviare cups per controllare che il problema sia stato effettivamente risolto.&lt;br /&gt;&lt;br /&gt;(Fonte: &lt;a href="http://crunchbanglinux.org/forums/topic/53/printing-broken/" target="_blank"&gt;http://crunchbanglinux.org/forums/topic/53/printing-broken/&lt;/a&gt;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-5698541355282674448?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/5698541355282674448/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2009/04/problema-con-cupsd-child-exited-with.html#comment-form' title='2 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/5698541355282674448'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/5698541355282674448'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2009/04/problema-con-cupsd-child-exited-with.html' title='[Risolto] Problema con cupsd: «Child exited with status 1!»'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-3686012128474630976</id><published>2009-04-12T21:27:00.011+02:00</published><updated>2009-08-28T00:36:02.796+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='problema'/><category scheme='http://www.blogger.com/atom/ns#' term='gui-apt-key'/><category scheme='http://www.blogger.com/atom/ns#' term='amministrazione'/><title type='text'>Mancato avvio di APT Key Manager</title><content type='html'>Se avete installato su Ubuntu Intrepid (ma forse il problema è presente in Jaunty) il pacchetto &lt;span style="font-weight: bold;font-family:courier new;" &gt;gui-apt-key&lt;/span&gt; per poter autenticare comodamente attraverso un'interfaccia grafica i repository di terze parti (maggiori informazioni &lt;a href="http://elubuntu.blogspot.com/2009/02/importare-chiave-di-autenticazione-di.html" target="_blank"&gt;qui&lt;/a&gt;) avrete notato che avviando il programma da &lt;span style="font-weight: bold;"&gt;Applicazioni&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;Strumenti di sistema&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;APT Key Manager&lt;/span&gt; viene mostrato il seguente messaggio di errore:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;Impossibile lanciare la voce di menù&lt;br /&gt;Esecuzione del processo figlio "/usr/bin/su-to-root" fallita (Nessun file o directory)&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_YBnmJTR73Is/SeJCDu2zYhI/AAAAAAAAADo/stjUkg1ye4k/s1600-h/Schermata-Errore.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 149px;" src="http://2.bp.blogspot.com/_YBnmJTR73Is/SeJCDu2zYhI/AAAAAAAAADo/stjUkg1ye4k/s400/Schermata-Errore.png" alt="" id="BLOGGER_PHOTO_ID_5323890341390279186" border="0" /&gt;&lt;/a&gt;Il problema è dovuto al comando di esecuzione inserito nel file &lt;span style="font-weight: bold;font-family:courier new;" &gt;/usr/share/applications/gui-apt-key.desktop&lt;/span&gt; (che è il collegamento presente nel menu). Il comando in questione è, ovviamente, &lt;span style="font-weight: bold;font-family:courier new;" &gt;su-to-root&lt;/span&gt;. Si tratta di uno script bash che si può ottenere installando il pacchetto &lt;span style="font-weight: bold;font-family:courier new;" &gt;menu&lt;/span&gt; (&lt;a href="http://ubuntuforums.org/showthread.php?p=6102043#post6102043" target="_blank"&gt;fonte&lt;/a&gt;). L'installazione può essere fatta tramite &lt;a href="http://wiki.ubuntu-it.org/AmministrazioneSistema/Synaptic" target="_blank"&gt;Synaptic&lt;/a&gt; oppure nel terminale con il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo apt-get install menu&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Se volete evitare di installare il pacchetto &lt;span style="font-weight: bold;font-family:courier new;" &gt;menu&lt;/span&gt; (che comunque pesa solo circa 400 kB) potete risolvere il problema o modificando direttamente il file del collegamento, in particolare la chiave &lt;span style="font-weight: bold;"&gt;Exec&lt;/span&gt; così come spiegato più avanti, oppure per via grafica. Per seguire quest'ultima strada dovete fare clic con il tasto destro sul menu principale (dove c'è scritto &lt;span style="font-weight: bold;"&gt;Applicazioni | Risorse | Sistema&lt;/span&gt;) e poi selezionare &lt;span style="font-weight: bold;"&gt;Modifica menu&lt;/span&gt;. Si può avviare lo stesso programma da terminale con il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;alacarte&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Quindi sulla sinistra selezionate &lt;span style="font-weight: bold;"&gt;Strumenti di sistema&lt;/span&gt;, e sulla destra selezionate &lt;span style="font-weight: bold;"&gt;APT Key Manager&lt;/span&gt;, quindi fate clic sul pulsante Proprietà sulla destra. Nella finestra che vi si aprirà dovete modificare il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;/usr/bin/su-to-root -X -c /usr/sbin/gak&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;in&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;gksu -u root /usr/sbin/gak&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;cioè così com'era nella versione 0.3 presente in Ubuntu 8.04.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_YBnmJTR73Is/SeJNaIh3ynI/AAAAAAAAADw/0Pw7Sj0fs7E/s1600-h/Schermata-Propriet%C3%A0+del+lanciatore.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 187px;" src="http://4.bp.blogspot.com/_YBnmJTR73Is/SeJNaIh3ynI/AAAAAAAAADw/0Pw7Sj0fs7E/s400/Schermata-Propriet%C3%A0+del+lanciatore.png" alt="" id="BLOGGER_PHOTO_ID_5323902820866837106" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Questo piccolo bug è stato segnalato su Launchpad (&lt;a href="https://bugs.launchpad.net/ubuntu/+source/gui-apt-key/+bug/282185" target="_blank"&gt;https://bugs.launchpad.net/ubuntu/+source/gui-apt-key/+bug/282185&lt;/a&gt;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-3686012128474630976?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/3686012128474630976/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2009/04/mancato-avvio-di-apt-key-manager.html#comment-form' title='4 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/3686012128474630976'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/3686012128474630976'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2009/04/mancato-avvio-di-apt-key-manager.html' title='Mancato avvio di APT Key Manager'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_YBnmJTR73Is/SeJCDu2zYhI/AAAAAAAAADo/stjUkg1ye4k/s72-c/Schermata-Errore.png' height='72' width='72'/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-5564837091382124023</id><published>2009-04-04T19:06:00.009+02:00</published><updated>2009-08-28T00:36:10.325+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='hard disk'/><category scheme='http://www.blogger.com/atom/ns#' term='problema'/><category scheme='http://www.blogger.com/atom/ns#' term='amministrazione'/><category scheme='http://www.blogger.com/atom/ns#' term='terminale'/><title type='text'>Correzione errori nel file system</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://commons.wikimedia.org/wiki/File:01b-hard-drive-cover-removed.JPG" target="_blank"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: right; cursor: pointer; width: 240px; height: 180px;" src="http://upload.wikimedia.org/wikipedia/commons/thumb/2/24/01b-hard-drive-cover-removed.JPG/240px-01b-hard-drive-cover-removed.JPG" alt="" border="0" /&gt;&lt;/a&gt;Oggi accendendo il computer mi è comparsa questa (molto poco) rassicurante scritta:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;*An automatic file system check (fsck) of the root filesystem failed.&lt;br /&gt;A manual fsck must be performed, then the system restarted.&lt;br /&gt;The fsck should be performed in maintenance mode with the&lt;br /&gt;root filesystem mounted in read-only mode.&lt;br /&gt;*The root filesystem is currently mounted in read-only mode.&lt;br /&gt;A maintenance shell will now be started.&lt;br /&gt;After performing system mainteance, press CONTROL-D&lt;br /&gt;to terminate the maintenance shell and restart the system.&lt;br /&gt;Give root password for maintenance&lt;br /&gt;(or type Control-D to continue):&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Il problema è che non sapevo che password inserire per continuare: la password del mio utente, infatti, non è la password di root (e comunque provando a inserire quella password mi segnalava login non valido). Anche avviando il computer in recovery mode la situazione era la stessa. Ho quindi avviato il computer con il &lt;a href="http://it.wikipedia.org/wiki/Live_CD" target="_blank"&gt;Live CD&lt;/a&gt; (conservatelo sempre, può tornare molto utile in questi casi) per eseguire il controllo del file system manualmente. Ho dovuto però prima individuare quale fosse il file system su cui è installato Ubuntu. per fare ciò ho dato nel terminale il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo fdisk -l&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;che mi ha restituito questo output:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;Disco /dev/sda: 40.0 GB, 40027029504 byte&lt;br /&gt;255 testine, 63 settori/tracce, 4866 cilindri&lt;br /&gt;Unità = cilindri di 16065 * 512 = 8225280 byte&lt;br /&gt;Identificativo disco: 0x16281627&lt;br /&gt;&lt;br /&gt;Dispositivo Boot      Start         End      Blocks   Id  System&lt;br /&gt;/dev/sda1   *           1        2433    19543041    7  HPFS/NTFS&lt;br /&gt;/dev/sda2            2434        4866    19543072+   5  Esteso&lt;br /&gt;/dev/sda5            2434        4759    18683563+  83  Linux&lt;br /&gt;/dev/sda6            4760        4866      859446   82  Linux swap / Solaris&lt;br /&gt;&lt;br /&gt;Disco /dev/sdb: 20.4 GB, 20416757760 byte&lt;br /&gt;255 testine, 63 settori/tracce, 2482 cilindri&lt;br /&gt;Unità = cilindri di 16065 * 512 = 8225280 byte&lt;br /&gt;Identificativo disco: 0x29ab86bc&lt;br /&gt;&lt;br /&gt;Dispositivo Boot      Start         End      Blocks   Id  System&lt;br /&gt;/dev/sdb1               1        2482    19936633+   c  W95 FAT32 (LBA)&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Ubuntu è installato nel dispositivo il cui sistema si chiama Linux. Nel mio caso il dispositivo è &lt;span style="font-weight: bold;font-family:courier new;" &gt;/dev/sda5&lt;/span&gt;. Quindi ho eseguito il controllo del file system con il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo fsck /dev/sda5&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Dopo alcune correzioni di errori presenti il controllo è terminato e riavviando il pc sono tornato nuovamente in possesso del computer.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-5564837091382124023?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/5564837091382124023/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2009/04/correzione-errori-nel-file-system.html#comment-form' title='3 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/5564837091382124023'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/5564837091382124023'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2009/04/correzione-errori-nel-file-system.html' title='Correzione errori nel file system'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-8489418512110216558</id><published>2009-03-31T15:18:00.017+02:00</published><updated>2010-07-03T15:14:27.779+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='pidgin'/><category scheme='http://www.blogger.com/atom/ns#' term='repository'/><category scheme='http://www.blogger.com/atom/ns#' term='pacchetti'/><category scheme='http://www.blogger.com/atom/ns#' term='amministrazione'/><title type='text'>Repository per Pidgin</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://commons.wikimedia.org/wiki/File:Pidgin-IM_Logo.svg" target="_blank"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 331px; height: 90px;" src="http://upload.wikimedia.org/wikipedia/commons/thumb/e/ec/Pidgin-IM_Logo.svg/331px-Pidgin-IM_Logo.svg.png" alt="" border="0" /&gt;&lt;/a&gt;Torno a parlare del mio client di messaggistica istantanea preferito: &lt;a href="http://www.pidgin.im/" target="_blank"&gt;Pidgin&lt;/a&gt;. Esiste un &lt;a href="http://wiki.ubuntu-it.org/Repository" target="_blank"&gt;repository&lt;/a&gt; per aggiornare automaticamente questo programma. L'ho usato per qualche tempo, però l'ultima versione presente fino a pochi giorni fa era la 2.5.1, mentre attualmente l'ultima versione stabile è la 2.5.5. Nel frattempo ho aggiornato Pidgin con i pacchetti deb presenti &lt;a href="http://www.getdeb.net/app/Pidgin" target="_blank"&gt;qui&lt;/a&gt;. Da più o meno un giorno, invece, è stata aggiunta al repository proprio la 2.5.5 e ho quindi deciso di aggiungerlo al mio elenco, nella speranza che continueranno ad aggiornarlo in seguito, altrimenti tornerò a usare i pacchetti di Getdeb.net (per altro rapidissimi nel distribuirli).&lt;br /&gt;&lt;br /&gt;Vi illustro ora come aggiungere il repository di Pidgin.&lt;br /&gt;&lt;br /&gt;Per chi usa una versione di Ubuntu dalla 9.10 (Karmic Koala) in poi è sufficiente dare semplicemente il seguente comando nel terminale&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo add-apt-repository ppa:pidgin-developers/ppa&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;senza ulteriori complicazioni, e il repository verrà anche autenticato automaticamente&lt;br /&gt;&lt;br /&gt;Per le versioni precedenti, aprite &lt;span style="font-weight: bold;"&gt;Sistema&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;Amministrazione&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;Sorgenti software&lt;/span&gt;. Nella scheda &lt;span style="font-weight: bold;"&gt;Software di terze parti&lt;/span&gt; fate clic su &lt;span style="font-weight: bold;"&gt;Aggiungi&lt;/span&gt; e scrivete la seguente stringa&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;deb http://ppa.launchpad.net/pidgin-developers/ubuntu intrepid main&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;sostituendo a &lt;span style="font-weight: bold;"&gt;intrepid&lt;/span&gt; il nome della vostra versione di Ubuntu. Se non sapete il nome in codice della vostra release date questo comando nel terminale:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;lsb_release -c&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;A me è apparso questo output:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;Codename:    intrepid&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Quindi, nel mio caso &lt;span style="font-weight: bold;"&gt;intrepid&lt;/span&gt; è il nome da mettere nella stringa mostrata di sopra. Le versioni di Ubuntu che si possono mettere nella stringa sono &lt;span style="font-weight: bold;"&gt;dapper&lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;gutsy&lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;hardy&lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;intrepid&lt;/span&gt; e &lt;span style="font-weight: bold;"&gt;jaunty&lt;/span&gt;.&lt;br /&gt;Potete anche aggiungere il repository da terminale seguendo &lt;a style="" href="http://wiki.ubuntu-it.org/Repository/RigaDiComando" target="_blank"&gt;questa guida&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Dopo aver aggiunto il repository dovete aggiungere la chiave di autenticazione per il repository (come spiegato &lt;a href="http://elubuntu.blogspot.com/2009/02/importare-chiave-di-autenticazione-di.html" target="_blank"&gt;qui&lt;/a&gt;): nel terminale digitate questi comandi:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;gpg --keyserver keyserver.ubuntu.com --recv-keys 7FB8BEE0A1F196A8&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;gpg --export --armor 7FB8BEE0A1F196A8 | sudo apt-key add -&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Per autenticare il repository potete anche copiare il contenuto di &lt;a style="" href="http://keyserver.ubuntu.com:11371/pks/lookup?op=get&amp;amp;search=0x7FB8BEE0A1F196A8" target="_blank"&gt;questa pagina&lt;/a&gt; in un editor di testo (a partire da &lt;span style="font-weight: bold;font-family:courier new;" &gt;-----BEGIN PGP PUBLIC KEY BLOCK-----&lt;/span&gt;), salvatelo in un file, aprite &lt;span style="font-weight: bold;"&gt;Sistema&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;Amministrazione&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;Sorgenti software&lt;/span&gt; e nella scheda &lt;span style="font-weight: bold;"&gt;Autenticazione&lt;/span&gt; fate clic su &lt;span style="font-weight: bold;"&gt;Importa file chiave...&lt;/span&gt;, quindi selezionate il file che avete appena salvato. Se la chiave verrà aggiunta correttamente potete anche eliminare il file.&lt;br /&gt;&lt;br /&gt;Dopo aver in qualche modo aggiunto il repository vi basta un semplice aggiornamento del sistema per ottenere l'ultima versione di Pidgin. Quindi aprite &lt;span style="font-weight: bold;"&gt;Sistema&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;Amministrazione&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;Gestione aggiornamenti&lt;/span&gt;. Nella finestra che si aprirà fate clic su &lt;span style="font-weight: bold;"&gt;Verifica&lt;/span&gt;. A questo punto, se non aveste aggiunto la chiave di autenticazione avreste letto questo messaggio di errore:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;W: Errore GPG: http://ppa.launchpad.net intrepid Release: Le seguenti firme non sono state verificate perché la chiave pubblica non è disponibile: NO_PUBKEY 7FB8BEE0A1F196A8&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Negli aggiornamenti proposti dovrebbe comparirvi Pidgin, quindi potete fare finalmente clic su &lt;span style="font-weight: bold;"&gt;Installa aggiornamenti&lt;/span&gt;. L'aggiornamento della versione di Pidgin può anche essere fatta da terminale con i due seguenti comandi:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo apt-get update&lt;br /&gt;sudo apt-get upgrade&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;Il primo aggiorna l'indice dei pacchetti installabili, il secondo aggiorna i pacchetti installati di cui è presente una versione più recente.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Aggiornamento dell'1 aprile 2009&lt;/span&gt;: hanno aggiunto delle istruzioni per aggiungere il repository anche sul &lt;a href="http://pidgin.im/download/ubuntu/" target="_blank"&gt;sito&lt;/a&gt; stesso di Pidgin quindi nutro qualche speranza in più che aggiorneranno la versione presente nel repository.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style:italic;"&gt;&lt;span style="font-weight:bold;"&gt;Nota&lt;/span&gt;: il post è stato aggiornato successivamente alla sua pubblicazione per aggiungere le istruzioni relative alle ultime versioni di Ubuntu.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-8489418512110216558?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/8489418512110216558/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2009/03/repository-per-pidgin.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/8489418512110216558'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/8489418512110216558'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2009/03/repository-per-pidgin.html' title='Repository per Pidgin'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-4897234067677505184</id><published>2009-03-23T20:30:00.021+01:00</published><updated>2010-03-21T15:13:09.026+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='lxde'/><category scheme='http://www.blogger.com/atom/ns#' term='xbindkeys'/><category scheme='http://www.blogger.com/atom/ns#' term='tastiera'/><category scheme='http://www.blogger.com/atom/ns#' term='pacchetti'/><category scheme='http://www.blogger.com/atom/ns#' term='amministrazione'/><title type='text'>Impostare scorciatoie da tastiera con xbindkeys</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.cfappsinc.ca/downloads/linux_key.jpg" target="_blank"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 240px; height: 180px;" src="http://www.cfappsinc.ca/downloads/linux_key.jpg" alt="" border="0" /&gt;&lt;/a&gt;Utilizzando GNOME come &lt;a href="http://it.wikipedia.org/wiki/Desktop_environment" target="_blanket"&gt;ambiente desktop&lt;/a&gt; è possibile impostare delle combinazioni da tastiera senza installare alcun programma semplicemente da &lt;span style="font-weight: bold;"&gt;Sistema&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;Preferenze&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;Scorciatoie da tastiera&lt;/span&gt;. Oggi però ho voluto provare un metodo "alternativo" per impostare le scorciatoie. xbindkeys può tornare utile se si utilizzano desktop environment diversi da &lt;a href="http://www.gnome.org/" target="_blanket"&gt;GNOME&lt;/a&gt; e che non offrono la possibilità di modificare le scorciatoie (&lt;s&gt;per esempio, in questi giorni sto provando &lt;a href="http://lxde.org/" target="_blanket"&gt;LXDE&lt;/a&gt; non ho trovato altri modi di impostare scorciatoie personalizzate&lt;/s&gt; Come segnalato da un lettore anonimo, in LXDE è possibile impostare le scorciatoie modificando il file &lt;span style="font-weight: bold;font-family:courier new;" &gt;~/.config/openbox/lxde-rc.xml&lt;/span&gt;. Maggiori informazioni a questo proposito possono essere trovate &lt;a href="http://openbox.org/wiki/Help:Bindings"&gt;qui&lt;/a&gt;). Vi illustro le operazioni da fare.&lt;br /&gt;&lt;br /&gt;Per prima cosa dovete installare il programma necessario che si chiama &lt;a href="http://hocwp.free.fr/xbindkeys/xbindkeys.html" target="_blank"&gt;xbindkeys&lt;/a&gt;. Potete installarlo con &lt;a href="http://wiki.ubuntu-it.org/AmministrazioneSistema/Synaptic" target="_blank"&gt;Synaptic&lt;/a&gt; oppure da terminale con il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo apt-get install &lt;a href="apt:xbindkeys"&gt;xbindkeys&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Se dopo aver installato il pacchetto provate a dare il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;xbindkeys&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;leggerete questo messaggio di errore:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;Error : /home/&lt;span style="font-style: italic;"&gt;nomeutente&lt;/span&gt;/.xbindkeysrc not found or reading not allowed.&lt;br /&gt;please, create one with 'xbindkeys --defaults &gt; /home/&lt;span style="font-style: italic;"&gt;nomeutente&lt;/span&gt;/.xbindkeysrc'.&lt;br /&gt;or, if you want scheme configuration style,&lt;br /&gt;with 'xbindkeys --defaults-guile &gt; /home/&lt;span style="font-style: italic;"&gt;nomeutente&lt;/span&gt;/.xbindkeysrc.scm'.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;(ovviamente al posto di &lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;&lt;span style="font-style: italic;"&gt;nomeutente &lt;/span&gt;&lt;/span&gt;comparirà il nome del vostro utente) quindi, come suggerito, digitate il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;xbindkeys --defaults &gt; ~/.xbindkeysrc&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;(vi ricordo che la tilde &lt;span style="font-weight: bold;font-family:courier new;" &gt;~&lt;/span&gt; è un'abbreviazione del percorso della vostra cartella home). È stato dunque creato il file &lt;span style="font-weight: bold;font-family:courier new;" &gt;.xbindkeysrc &lt;/span&gt;nella vostra cartella home. Il suo nome inizia con il punto e questo significa che è un file nascosto. Per vederlo, entrate nella vostra home (&lt;span style="font-weight: bold;"&gt;Risorse&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;Cartella home&lt;/span&gt;) e, se non visualizzate i file nascosti, premete i tasti [ &lt;span style="font-weight: bold;"&gt;CTRL&lt;/span&gt; ] + [ &lt;span style="font-weight: bold;"&gt;H&lt;/span&gt; ] per far "apparire" il nostro file. Potete quindi aprire &lt;span style="font-weight: bold;font-family:courier new;" &gt;.xbindkeysrc&lt;/span&gt; per guardarlo.&lt;br /&gt;&lt;br /&gt;In ogni riga, tutto ciò che si trova alla destra del cancelletto &lt;span style="font-weight: bold;font-family:courier new;" &gt;#&lt;/span&gt; è un cosiddetto &lt;a href="http://it.wikipedia.org/wiki/Commento_%28informatica%29" target="_blank"&gt;commento&lt;/a&gt;. Ciò che vi interessa sono le righe del tipo&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;"xterm"&lt;br /&gt;c:41 + m:0x4&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;in cui la prima indica il comando da eseguire (&lt;a href="http://en.wikipedia.org/wiki/Xterm" target="blank"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;xterm&lt;/span&gt;&lt;/a&gt; è un emulatore del terminale) e la seconda corrisponde alla combinazione di tasti da premere per eseguire il comando (in questo caso dovrebbe essere [ &lt;span style="font-weight: bold;"&gt;CTRL&lt;/span&gt; ] + [ &lt;span style="font-weight: bold;"&gt;F&lt;/span&gt; ]).&lt;br /&gt;&lt;br /&gt;Ora però noi vogliamo aggiungere una nuova scorciatoia da tastiera per velocizzare le operazioni più comuni. Per esempio, vogliamo creare la scorciatoia [ &lt;span style="font-weight: bold;"&gt;ALT&lt;/span&gt; ] + [ &lt;span style="font-weight: bold;"&gt;T&lt;/span&gt; ] per aprire il terminale di GNOME che si invoca con il comando &lt;span style="font-weight: bold;font-family:courier new;" &gt;gnome-terminal&lt;/span&gt; (e che è diverso esteticamente dal terminale che si apre con il comando &lt;span style="font-weight: bold;font-family:courier new;" &gt;xterm&lt;/span&gt;). Nel terminale inserite il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;xbindkeys -k&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;oppure&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;xbindkeys --key&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;e vi uscirà scritto&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;Press combination of keys or/and click under the window.&lt;br /&gt;You can use one of the two lines after "NoCommand"&lt;br /&gt;in $HOME/.xbindkeysrc to bind a key.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;e quindi premete la combinazione di tasti che vi interessa (nell'esempio sarà [ &lt;span style="font-weight: bold;"&gt;ALT&lt;/span&gt; ] + [ &lt;span style="font-weight: bold;"&gt;T&lt;/span&gt; ]). Dopo che avrete premuto i tasti comparirà la scritta&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;"(Scheme function)"&lt;br /&gt;m:0x18 + c:28&lt;br /&gt;Alt+Mod2 + t&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Ora per completare l'operazione non vi resta che ricopiare nel file &lt;span style="font-weight: bold;font-family:courier new;" &gt;.xbindkeysrc&lt;/span&gt;, prima della stringa &lt;span style="font-weight: bold;font-family:courier new;" &gt;End of xbindkeys configuration&lt;/span&gt;, queste tre righe, sostituendo (nel nostro esempio) a &lt;span style="font-weight: bold;font-family:courier new;" &gt;"(Scheme function)"&lt;/span&gt; la scritta &lt;span style="font-weight: bold;font-family:courier new;" &gt;"gnome-terminal"&lt;/span&gt;. Un consiglio utile è di scrivere un piccolo commento prima del comando, in modo da ricordarsi in seguito qual è la combinazione aggiunta. Quindi, in concreto, dovrete aggiungere le seguenti righe:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;# Apre "gnome-terminal" con la combinazione ALT + T&lt;br /&gt;"gnome-terminal"&lt;br /&gt;m:0x18 + c:28&lt;br /&gt;Alt+Mod2 + t&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Potete anche aggiungere solo una delle ultime due righe (&lt;span style="font-weight: bold;font-family:courier new;" &gt;m:0x18 + c:28 &lt;/span&gt;oppure &lt;span style="font-weight: bold;font-family:courier new;" &gt;Alt+Mod2 + t&lt;/span&gt;).&lt;br /&gt;&lt;br /&gt;Se avete intenzione di aggiungere numerose combinazioni di tasti, non c'è bisogno di usare il comando &lt;span style="font-weight: bold;font-family:courier new;" &gt;xbindkeys -k&lt;/span&gt; ogni volta, potete usare&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;xbindkeys -mk&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;oppure&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;xbindkeys --multikey&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;e poi premere il tasto [ &lt;span style="font-weight: bold;"&gt;Q&lt;/span&gt; ] quando avete finito.&lt;br /&gt;&lt;br /&gt;Le combinazioni di tasti possono anche comprendere i tasti del mouse. Normalmente xbindkeys non fa distinzione se siano attivi NumLock, CapsLock e ScrollLock. Se invece volete impostare questo controllo dovete decommentare (cioè rimuovere il &lt;span style="font-weight: bold;font-family:courier new;" &gt;#&lt;/span&gt;) prima delle seguenti righe (nel mio file &lt;span style="font-weight: bold;font-family:courier new;" &gt;.xbindkeysrc &lt;/span&gt;compaiono ai righi 36-38)&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;#keystate_numlock = enable&lt;br /&gt;#keystate_capslock = enable&lt;br /&gt;#keystate_scrolllock= enable&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Ovviamente potete anche decommentare solo quello che vi interessa, non necessariamente tutti e tre.&lt;br /&gt;&lt;br /&gt;Una volta che è pronto il vostro file di configurazione per xbindkeys vi resta un'ultima semplice operazione da fare: seguendo &lt;a href="http://wiki.ubuntu-it.org/AmministrazioneSistema/AvvioAutomatico#head-ec9447e8d03f6f517b88e6d3e11c9afcfe0c5e60" target="_blank"&gt;queste istruzioni&lt;/a&gt; aggiungete ai programmi in esecuzione automatica all'avvio della sessione il comando &lt;span style="font-weight: bold;font-family:courier new;" &gt;xbindkeys&lt;/span&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-4897234067677505184?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/4897234067677505184/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2009/03/impostare-scorciatoie-da-tastiera-con.html#comment-form' title='7 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/4897234067677505184'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/4897234067677505184'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2009/03/impostare-scorciatoie-da-tastiera-con.html' title='Impostare scorciatoie da tastiera con xbindkeys'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-8272452671618380331</id><published>2009-03-07T14:40:00.022+01:00</published><updated>2009-07-22T18:01:08.126+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='compilazione'/><category scheme='http://www.blogger.com/atom/ns#' term='pidgin'/><category scheme='http://www.blogger.com/atom/ns#' term='problema'/><category scheme='http://www.blogger.com/atom/ns#' term='pacchetti'/><category scheme='http://www.blogger.com/atom/ns#' term='terminale'/><title type='text'>Compilare il pacchetto purple-plugin_pack</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://commons.wikimedia.org/wiki/File:Pidgin.svg" target="_blank"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 200px; height: 200px;" src="http://upload.wikimedia.org/wikipedia/commons/thumb/1/18/Pidgin.svg/200px-Pidgin.svg.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Oggi avevo deciso di &lt;a href="http://wiki.ubuntu-it.org/AmministrazioneSistema/InstallareProgrammi/DaSorgenti" target="_blank"&gt;compilare&lt;/a&gt; il pacchetto purple-plugin_pack che aggiunge circa 50 nuovi plugin al client di messaggistica istantanea &lt;a href="http://www.pidgin.im/" target="_blank"&gt;Pidgin&lt;/a&gt;. Nei repository di Ubuntu si trova già il pacchetto &lt;a href="apt:pidgin-plugin-pack"&gt;pidgin-plugin-pack&lt;/a&gt;, però è alla versione 2.2.0 mentre sul &lt;a href="http://plugins.guifications.org/trac/wiki/PluginPack" target="_blank"&gt;sito ufficiale&lt;/a&gt; è presente il sorgente della versione 2.5.1. Se non avete già compilato altri plugin per Pidgin né Pidgin stesso dovete prima installare i pacchetti necessari dando nel terminale il seguente comando:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo apt-get install &lt;a tooltip="linkalert-tip" href="apt:build-essential,pidgin-dev"&gt;build-essential pidgin-dev&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Se non amate il terminale (che comunque sarà necessario in seguito per compilare il pacchetto) potete installare i due pacchetti facendo clic sui nomi, oppure con &lt;a href="http://wiki.ubuntu-it.org/AmministrazioneSistema/Synaptic" target="_blank"&gt;Synaptic&lt;/a&gt;. In realtà, se avete compilato da soli Pidgin non dovreste incontrare i problemi che ho trovato io e questa guida molto probabilmente non vi interesserà.&lt;br /&gt;&lt;br /&gt;Dopo di ciò scaricate il &lt;a href="http://plugins.guifications.org/trac/downloads/24" target="_blank"&gt;sorgente&lt;/a&gt; di purple-plugin_pack e scompattatelo (clic con il tasto destro sull'icona dell'archivio → &lt;span style="font-weight: bold;"&gt;Estrai qui&lt;/span&gt;). Ora aprite il terminale, se non l'avete già fatto, e spostatevi con il comando &lt;a href="http://wiki.ubuntu-it.org/AmministrazioneSistema/ComandiBase#cd" target="_blank"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;cd&lt;/span&gt;&lt;/a&gt; nella cartella dove avete scompattate il sorgente. Date il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;./configure&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Se tutto è andato bene, alla fine dell'esecuzione comparirà la scritta&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;Type make to compile&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;quindi potete procedere. Se non aveste installato &lt;span style="font-weight: bold;font-family:courier new;" &gt;pidgin-dev&lt;/span&gt; avreste letto questo messaggio di errore:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;&lt;span style="color: rgb(255, 0, 0);"&gt;No package 'purple' found&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;Consider adjusting the PKG_CONFIG_PATH environment variable if you&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;installed software in a non-standard prefix.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;Alternatively, you may set the environment variables PURPLE_CFLAGS&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;and PURPLE_LIBS to avoid the need to call pkg-config.&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;See the pkg-config man page for more details.&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;A questo punto date il comando:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;make&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Qui, però, ho incontrato un problema: mi è comparso il seguente errore (seguito da altri messaggi, ma l'errore è questo):&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;/usr/bin/ld: cannot find -lpurple&lt;br /&gt;collect2: ld returned 1 exit status&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Il problema stava nel file &lt;span style="font-weight: bold;font-family:courier new;" &gt;/usr/lib/libpurple.so&lt;/span&gt;, infatti il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;file /usr/lib/libpurple.so&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;restituiva come output&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;/usr/lib/libpurple.so: broken symbolic link to `libpurple.so.0.5.2'&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;ciò vuol dire che il file in questione è un &lt;a href="http://it.wikipedia.org/wiki/Collegamento_simbolico" target="_blank"&gt;collegamento simbolico&lt;/a&gt; ma il file a cui dovrebbe puntare non esiste. Ho quindi cercato file che si chiamassero libpurple.so.0 con il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;locate libpurple.so.0&lt;/span&gt;.&lt;br /&gt;&lt;/div&gt;Se non non riceve risultati potreste dover aggiornare il database con il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo updatedb&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Il mio output del comando &lt;span style="font-weight: bold;font-family:courier new;" &gt;locate libpurple.so.0. &lt;/span&gt;è stato&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;/usr/lib/libpurple.so.0.5.5&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Quindi il file trovato è stato &lt;span style="font-weight: bold;font-family:courier new;" &gt;/usr/lib/libpurple.so.0.5.5&lt;/span&gt;. Ho perciò creato il collegamento simbolico mancante con il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo ln -s /usr/lib/libpurple.so.0.5.5 /usr/lib/libpurple.so&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Dopo di ciò ho potuto riprendere la compilazione del pacchetto con il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;make&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;e poi&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo make install&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Se avete concluso con successo la compilazione, aprendo Pidgin troverete tutti i nuovi plugin pronti all'uso.&lt;br /&gt;&lt;br /&gt;Dopo aver compilato il pacchetto potete anche creare un file .deb per poter più facilmente installare successivamente i plugin. Io ho utilizzato con successo &lt;a href="http://wiki.ubuntu-it.org/Programmazione/Checkinstall"&gt;checkinstall&lt;/a&gt; (dopo aver installando il pacchetto &lt;a style="font-weight: bold; font-family: courier new;" href="apt:checkinstall"&gt;checkinstall&lt;/a&gt; (chi l'avrebbe mai detto, no?)). Il comando da dare per creare il pacchetto è:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;checkinstall --install=no&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Analoghi problemi (con analoghe soluzioni) potrebbero essere incontrati compilando il plugin &lt;a href="http://plugins.guifications.org/trac/wiki/Guifications" target="_blank"&gt;Guifications&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-8272452671618380331?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/8272452671618380331/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2009/03/compilare-il-pacchetto-purple.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/8272452671618380331'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/8272452671618380331'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2009/03/compilare-il-pacchetto-purple.html' title='Compilare il pacchetto purple-plugin_pack'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-5185408256975419673</id><published>2009-03-06T22:42:00.013+01:00</published><updated>2009-08-31T15:15:58.667+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='amministrazione'/><category scheme='http://www.blogger.com/atom/ns#' term='gnome'/><category scheme='http://www.blogger.com/atom/ns#' term='nautilus'/><title type='text'>Creare nuovi modelli di file per Nautilus</title><content type='html'>In Nautilus (il file manager predefinito di GNOME) avrete notato che c'è la possibilità di creare un nuovo documento vuoto (clic con il tasto destro in una cartella → &lt;span style="font-weight: bold;"&gt;Crea documento&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;File vuoto&lt;/span&gt;). Avrete anche notato che sopra l'opzione &lt;span style="font-weight: bold;"&gt;File vuoto&lt;/span&gt; c'è scritto &lt;span style="font-weight: bold;"&gt;Nessun modello installato&lt;/span&gt; (se non leggete questa scritta probabilmente questa guida non vi servirà).&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_YBnmJTR73Is/SbGbCG6gg7I/AAAAAAAAACY/EytGgwpF2Dc/s1600-h/senza-modelli.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 399px; height: 400px;" src="http://4.bp.blogspot.com/_YBnmJTR73Is/SbGbCG6gg7I/AAAAAAAAACY/EytGgwpF2Dc/s400/senza-modelli.png" alt="" id="BLOGGER_PHOTO_ID_5310195896164582322" border="0" /&gt;&lt;/a&gt;Magari a questo punto vi sarà anche venuta la curiosità di come si facciano a creare dei modelli (chiamati in inglese &lt;span style="font-style: italic;"&gt;Templates&lt;/span&gt;) personalizzati. È semplicissimo. Aprite Nautilus (per esempio da &lt;span style="font-weight: bold;"&gt;Risorse&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;Cartella home&lt;/span&gt;) e poi aprite &lt;span style="font-weight: bold;"&gt;Vai&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;Modelli&lt;/span&gt;. Questo vi porterà nella cartella &lt;span style="font-weight: bold;font-family:courier new;" &gt;~/Modelli&lt;/span&gt; (ricordo che la tilde &lt;span style="font-weight: bold;font-family:courier new;" &gt;~&lt;/span&gt; indica il percorso della vostra cartella home, per esempio &lt;span style="font-weight: bold;font-family:courier new;" &gt;/home/nomeutente&lt;/span&gt;) oppure la creerà se non esiste. Volendo, potete anche creare la cartella manualmente. A questo punto non dovete far altro che salvare in questa cartella i modelli che preferite. Dopo che avrete salvato i modelli (ovviamente dategli dei nomi chiari) il risultato sarà simile a questo:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_YBnmJTR73Is/SbGeVIbikoI/AAAAAAAAACg/WHhe7wBl7v8/s1600-h/con-modelli.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 286px; height: 400px;" src="http://2.bp.blogspot.com/_YBnmJTR73Is/SbGeVIbikoI/AAAAAAAAACg/WHhe7wBl7v8/s400/con-modelli.png" alt="" id="BLOGGER_PHOTO_ID_5310199521523962498" border="0" /&gt;&lt;/a&gt;Se dopo aver creato la cartella e salvato dentro i vostri modelli questi non dovessero comparire nel menu mostrato nell'immagine, provate a chiudere tutte le finestre di Nautilus e poi riaprire. Se dopo di ciò non dovesse ancora funzionare, aprite il file &lt;span style="font-weight: bold;font-family:courier new;" &gt;~/.config/user-dirs.dirs&lt;/span&gt; e controllate che ci sia la riga&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;XDG_TEMPLATES_DIR="$HOME/Modelli"&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Se per qualche motivo non ci dovesse essere, oppure è diversa, modificatela come scritto sopra. Potete anche modificare il percorso inserendone uno a vostro piacimento (&lt;span style="font-weight: bold;font-family:courier new;" &gt;$HOME&lt;/span&gt; è un altro modo per indicare la cartella home dell'utente corrente).&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.gnome-look.org/content/show.php?content=39317"&gt;Qui&lt;/a&gt; potete trovare una raccolta di modelli, ovviamente da salvare nella cartella &lt;span style="font-weight: bold;font-family:courier new;" &gt;~/Modelli &lt;/span&gt;(o in quella che avete impostato). Se i nomi dei file in inglesi non vi piacciono rinominate semplicemente i modelli salvati nella cartella.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-5185408256975419673?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/5185408256975419673/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2009/03/creare-nuovi-modelli-di-file-per.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/5185408256975419673'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/5185408256975419673'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2009/03/creare-nuovi-modelli-di-file-per.html' title='Creare nuovi modelli di file per Nautilus'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_YBnmJTR73Is/SbGbCG6gg7I/AAAAAAAAACY/EytGgwpF2Dc/s72-c/senza-modelli.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-2279019308544100682</id><published>2009-02-23T15:40:00.009+01:00</published><updated>2010-06-30T23:58:44.802+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='grub'/><category scheme='http://www.blogger.com/atom/ns#' term='pacchetti'/><category scheme='http://www.blogger.com/atom/ns#' term='amministrazione'/><category scheme='http://www.blogger.com/atom/ns#' term='boot'/><title type='text'>Mini guida all'utilizzo di StartUp Manager</title><content type='html'>&lt;span style="font-style:italic;"&gt;&lt;span style="font-weight:bold;"&gt;Nota&lt;/span&gt;: questo post fa particolare riferimento alal versione 0.97 di GNU GRUB. A partire da Ubuntu Karmic Koala 9.10 è utilizzato come bootload una versione più recente di questo software (Grub 2), che ha una sintassi nei file molto differente da quella descritta in questo post. Startup Manager è comunque utilizzabile con Grub 2.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Chi ha installato sistemi in dual boot ha familiarità con il &lt;a href="http://it.wikipedia.org/wiki/Boot_loader" target="_blank"&gt;boot loader&lt;/a&gt; &lt;a href="http://www.gnu.org/software/grub/" target="_blank"&gt;GNU GRUB&lt;/a&gt;. È il programma che permette di scegliere quale sistema avviare al momento dell'accensione del computer. GRUB è comunque presente in moltissimi sistemi GNU/Linux (compreso Ubuntu). Volendo cambiare le impostazioni di GNU GRUB (versione 0.97) si dovrebbe modificare il file &lt;span style="font-weight: bold;font-family:courier new;" &gt;/boot/grub/menu.lst&lt;/span&gt; (che in altre &lt;a href="http://it.wikipedia.org/wiki/Distribuzione_Linux" target="_blank"&gt;distro&lt;/a&gt; come &lt;a href="http://fedoraproject.org/"&gt;Fedora&lt;/a&gt; e &lt;a href="http://www.gentoo.org/" target="_blank"&gt;Gentoo Linux&lt;/a&gt; si chiama &lt;span style="font-weight: bold;font-family:courier new;" &gt;/boot/grub/grub.conf&lt;/span&gt; (&lt;span style="font-size:85%;"&gt;&lt;a href="http://en.wikipedia.org/wiki/GNU_GRUB#Installation" target="_blank"&gt;fonte&lt;/a&gt;&lt;/span&gt;)). Modificare manualmente il file non è propriamente semplice per gli utenti novizi, ma fortunatamente arriva in nostro soccorso il programma con interfaccia grafica &lt;a href="http://web.telia.com/%7Eu88005282/sum/index.html" target="_blank"&gt;StartUp Manager&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;L'installazione di StartUp Manager può essere fatta con &lt;a href="http://wiki.ubuntu-it.org/AmministrazioneSistema/Synaptic" target="_blank"&gt;Synaptic&lt;/a&gt; o tramite terminale, installando il pacchetto &lt;a href="apt:startupmanager"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;startupmanager&lt;/span&gt;&lt;/a&gt; (fate clic sul nome per installarlo automaticamente). Il comando da dare tramite terminale per installare il pacchetto è&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:Courier New;" &gt;sudo apt-get install &lt;/span&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;startupmanager&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;Una volta installato, il programma può essere avviato da &lt;span style="font-weight: bold;"&gt;Sistema&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;Amministrazione&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;StartUp-Manager&lt;/span&gt; oppure con il terminale con il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:Courier New;" &gt;sudo &lt;/span&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;startupmanager&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Vediamo ora come funziona.&lt;br /&gt;&lt;br /&gt;Scheda &lt;span style="font-weight: bold;"&gt;Opzioni di boot&lt;/span&gt;:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_YBnmJTR73Is/SaAPs_-3XDI/AAAAAAAAABw/IYxvC_JBqCg/s1600-h/Schermata-StartUp-Manager-opzioni-boot.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 377px; height: 400px;" src="http://1.bp.blogspot.com/_YBnmJTR73Is/SaAPs_-3XDI/AAAAAAAAABw/IYxvC_JBqCg/s400/Schermata-StartUp-Manager-opzioni-boot.png" alt="" id="BLOGGER_PHOTO_ID_5305257626806213682" border="0" /&gt;&lt;/a&gt;&lt;span style="font-weight: bold;"&gt;Timeout&lt;/span&gt;: il timeout è il tempo (espresso in secondi) dopo il quale si avvia il sistema operativo predefinito, se non viene premuto nessun tasto. Regolatelo in modo che non sia troppo breve (per esempio 1-2 secondi) altrimenti potreste non fare neanche in tempo a scegliere un sistema diverso da quello predefinito (equivale a modificare l'opzione&lt;span style="font-family:monospace;"&gt; &lt;/span&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;timeout&lt;/span&gt; nel file di configurazione di GRUB)&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;Sistema operativo predefinito&lt;/span&gt;: è l'opzione che all'apertura di GRUB è già selezionata. Come detto prima, se dopo alcuni secondi (regolati nel timeout) non viene premuto nessun tasto viene avviato quel sistema operativo (equivale a modificare l'opzione &lt;span style="font-weight: bold;font-family:courier new;" &gt;Default&lt;/span&gt; nel file di configurazione di GRUB). Potete scegliere anche l'opzione &lt;span style="font-weight: bold;"&gt;Ultimo utilizzo&lt;/span&gt;, cioè l'ultimo sistema avviato nella sessione precedente. NOTA: potreste voler modificare questa opzione in caso di aggiornamento del kernel. Infatti quando aggiornate il kernel senza rimuovere quelli precedenti, al menu di boot vengono aggiunte due voci (il nuovo kernel e il relativo recovery mode) e viene pertanto modificato il sistema predefinito.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;Schermo&lt;/span&gt;: potete modificare le dimensioni e la profondità del colore (se non avete intenzione di personalizzare l'aspetto potete lasciare queste impostazioni così come sono).&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;Miscellanea&lt;/span&gt;: Se non ci sono altri sistemi operativi installati il menu di GRUB è nascosto (vi si può comunque accedere quando si legge la scritta &lt;strong style="font-family: courier new;"&gt;Press ESC to enter the menu...&lt;/strong&gt;). Invece, selezionando l'opzione &lt;span style="font-weight: bold;"&gt;Mostra il menu del bootloader&lt;/span&gt; all'avvio verrà mostrato il menu (equivale a commentare l'opzione&lt;span style="font-family:monospace;"&gt; &lt;/span&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;hiddenmenu&lt;/span&gt; nel file di configurazione di GRUB)&lt;strong&gt;&lt;/strong&gt;.&lt;br /&gt;Selezionando l'opzione Mostra il &lt;span style="font-weight: bold;"&gt;boot splash&lt;/span&gt; viene visualizzato uno splash screen (equivale ad aggiungere &lt;strong style="font-family: courier new;"&gt;splash &lt;/strong&gt;alle opzioni di caricamento di un kernel, nel file di configurazione di GRUB).&lt;br /&gt;L'opzione &lt;span style="font-weight: bold;"&gt;Mostra testo&lt;/span&gt; visualizza durante il bootstrap le operazioni che vengono eseguite (equivale a togliere &lt;span style="font-weight: bold;"&gt;quiet&lt;/span&gt;&lt;strong style="font-family: courier new; font-weight: normal;"&gt; &lt;/strong&gt;dalle opzioni di caricamento di un kernel, nel file di configurazione di GRUB).&lt;/li&gt;&lt;/ul&gt;Scheda&lt;span style="font-weight: bold;"&gt; Aspetto&lt;/span&gt;:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_YBnmJTR73Is/SaAWuuif29I/AAAAAAAAACA/rHtu5TSMIOo/s1600-h/Schermata-StartUp-Manager-aspetto.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 377px; height: 400px;" src="http://4.bp.blogspot.com/_YBnmJTR73Is/SaAWuuif29I/AAAAAAAAACA/rHtu5TSMIOo/s400/Schermata-StartUp-Manager-aspetto.png" alt="" id="BLOGGER_PHOTO_ID_5305265353064963026" border="0" /&gt;&lt;/a&gt;Utili informazioni per configurare l'aspetto di GRUB possono essere trovate qui: &lt;a href="http://wiki.ubuntu-it.org/AmministrazioneSistema/Grub/StartUpManager#head-779de9f970066f907047375144554150ab5fb236" target="_blank"&gt;http://wiki.ubuntu-it.org/AmministrazioneSistema/Grub/StartUpManager#head-779de9f970066f907047375144554150ab5fb236&lt;/a&gt;.&lt;br /&gt;Altri splash per GRUB si possono ottenere installando con Synaptic o il terminale il pacchetto &lt;a href="apt:grub-splashimages"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;grub-splashimages&lt;/span&gt;&lt;/a&gt; (per Kubuntu: &lt;a href="apt:kubuntu-grub-splashimage"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;kubuntu-grub-splashimage&lt;/span&gt;&lt;/a&gt;). Da terminale il comando da dare è&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:Courier New;" &gt;sudo apt-get install &lt;/span&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 0);"&gt;&lt;span style="font-family:courier new;"&gt;grub-splashimages&lt;/span&gt;&lt;/span&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;Scheda &lt;span style="font-weight: bold;"&gt;Sicurezza&lt;/span&gt;:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_YBnmJTR73Is/SaAWu4RtmCI/AAAAAAAAACI/s73daibuL0U/s1600-h/Schermata-StartUp-Manager-sicurezza.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 377px; height: 400px;" src="http://3.bp.blogspot.com/_YBnmJTR73Is/SaAWu4RtmCI/AAAAAAAAACI/s73daibuL0U/s400/Schermata-StartUp-Manager-sicurezza.png" alt="" id="BLOGGER_PHOTO_ID_5305265355678914594" border="0" /&gt;&lt;/a&gt;&lt;span style="font-weight: bold;"&gt;Opzioni di protezione&lt;/span&gt;: &lt;span style="font-weight: bold;"&gt;Password di protezione bootloader&lt;/span&gt; equivale a decommentare la stringa &lt;span style="font-weight: bold;font-family:courier new;" &gt;#password topsecret&lt;/span&gt; nel file di configurazione di GRUB (quando viene inserita la password la stringa diventerà del tipo &lt;span style="font-weight: bold;font-family:courier new;" &gt;password --md5 &lt;span style="font-style: italic;"&gt;password&lt;/span&gt;&lt;/span&gt;)&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Password per proteggere la modalità di ripristino&lt;/span&gt; equivale a cambiare la stringa &lt;span style="font-weight: bold;font-family:courier new;" &gt;# lockalternative=false&lt;/span&gt; in &lt;span style="font-weight: bold;font-family:courier new;" &gt;# lockalternative=true&lt;/span&gt; nel file di configurazione di GRUB&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Password per proteggere le vecchie impostazioni di boot &lt;/span&gt;equivale a cambiare la stringa &lt;span style="font-weight: bold;font-family:courier new;" &gt;# lockold=false&lt;/span&gt; in &lt;span style="font-weight: bold;font-family:courier new;" &gt;# lockold=true&lt;/span&gt; nel file di configurazione di GRUB&lt;/li&gt;&lt;/ul&gt;Scheda &lt;span style="font-weight: bold;"&gt;Avanzate&lt;/span&gt;:&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_YBnmJTR73Is/SaAWvMVr51I/AAAAAAAAACQ/jBQJ-YhtfbI/s1600-h/Schermata-StartUp-Manager-avanzate.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 377px; height: 400px;" src="http://2.bp.blogspot.com/_YBnmJTR73Is/SaAWvMVr51I/AAAAAAAAACQ/jBQJ-YhtfbI/s400/Schermata-StartUp-Manager-avanzate.png" alt="" id="BLOGGER_PHOTO_ID_5305265361064290130" border="0" /&gt;&lt;/a&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;Numero di Kernel&lt;/span&gt;: con l'opzione &lt;span style="font-weight: bold;"&gt;Limita il numero di kernel nel menu di boot&lt;/span&gt; si può fare in modo che all'avvio non vengano elencati tutti i kernel elencati ma solo il numero che viene impostato. Comoda opzione per evitare che il menu di boot diventi troppo lungo quando ci siano numerosi kernel installati.&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;Miscellanea&lt;/span&gt;: &lt;span style="font-weight: bold;"&gt;Crea un opzione di boot per il &lt;/span&gt;&lt;a style="font-weight: bold;" href="http://www.memtest.org/" target="_blank"&gt;memtest86+&lt;/a&gt; aggiunge la possibilità di effettuare un test sulla memoria RAM al menu di boot (equivale a cambiare la stringa &lt;span style="font-weight: bold;font-family:courier new;" &gt;# memtest86=false&lt;/span&gt; in &lt;span style="font-weight: bold;font-family:courier new;" &gt;# memtest86=true&lt;/span&gt; nel file di configurazione di GRUB).&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Crea un opzione di boot per la modalità di recupero &lt;/span&gt;&lt;span&gt;aggiunge la possibilità di effettuare l'accesso in &lt;a href="https://wiki.ubuntu.com/RecoveryMode" target="_blank"&gt;recovery mode&lt;/a&gt;&lt;/span&gt; (equivale a cambiare la stringa  &lt;span style="font-weight: bold;font-family:courier new;" &gt;# alternative=false&lt;/span&gt; in  &lt;span style="font-weight: bold;font-family:courier new;" &gt;# alternative=true&lt;/span&gt; nel file di configurazione di GRUB).&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Aggiorna automaticamente le opzioni predefinite di boot&lt;/span&gt;&lt;span&gt; equivale a modificare la stringa &lt;span style="font-weight: bold;font-family:courier new;" &gt;# updatedefaultentry=false&lt;/span&gt; in &lt;span style="font-weight: bold;font-family:courier new;" &gt;# updatedefaultentry=true&lt;/span&gt; nel &lt;/span&gt;file di configurazione di GRUB&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Crea un floppy ripristino&lt;/span&gt;&lt;span&gt; permette di creare un floppy da utilizzare per il successivo ripristino del menu di GRUB, in caso di necessità&lt;/span&gt;&lt;br /&gt;StartUp Manager crea una copia di backup del file &lt;span style="font-weight: bold;font-family:courier new;" &gt;/boot/grub/menu.ls&lt;/span&gt; e si può riportare il file alle condizioni originali con l'opzione &lt;span style="font-weight: bold;"&gt;Ripristina le impostazioni originali&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;Chi desiderasse provare a modificare a proprio rischio e pericolo (un'errata configurazione può causare l'impossibilità di avviare il sistema operativo) il file di GRUB può leggere la guida &lt;a href="http://wiki.ubuntu-it.org/AmministrazioneSistema/Grub" target="_blank"&gt;http://wiki.ubuntu-it.org/AmministrazioneSistema/Grub&lt;/a&gt;. Nella guida ho anche voluto evidenziare come si può ottenere lo stesso effetto (quando sono stato in grado di determinarlo) modificando il file &lt;span style="font-weight: bold;font-family:courier new;" &gt;/boot/grub/menu.ls.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Un'altra guida per StartUp Manager si trova all'indirizzo &lt;a href="http://wiki.ubuntu-it.org/AmministrazioneSistema/Grub/StartUpManager" target="_blank"&gt;http://wiki.ubuntu-it.org/AmministrazioneSistema/Grub/StartUpManager&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Per ripristinare GRUB in caso di necessità (se per esempio dopo l'installazione di Ubuntu viene installato Windows, GRUB viene sovrascritto) potete leggere questa guida: &lt;a href="http://wiki.ubuntu-it.org/AmministrazioneSistema/Grub/Ripristino" target="_blank"&gt;http://wiki.ubuntu-it.org/AmministrazioneSistema/Grub/Ripristino&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Esistono anche altri programmi per modificare il file di GRUB come &lt;a href="http://www.qt-apps.org/content/show.php/QGRUBEditor?content=60391" target="_blank"&gt;QGRUBEditor&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-2279019308544100682?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/2279019308544100682/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2009/02/mini-guida-allutilizzo-di-startup.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/2279019308544100682'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/2279019308544100682'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2009/02/mini-guida-allutilizzo-di-startup.html' title='Mini guida all&apos;utilizzo di StartUp Manager'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_YBnmJTR73Is/SaAPs_-3XDI/AAAAAAAAABw/IYxvC_JBqCg/s72-c/Schermata-StartUp-Manager-opzioni-boot.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-2161756906744009097</id><published>2009-02-20T18:04:00.014+01:00</published><updated>2009-08-28T00:36:41.224+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='synaptic'/><category scheme='http://www.blogger.com/atom/ns#' term='problema'/><category scheme='http://www.blogger.com/atom/ns#' term='pacchetti'/><category scheme='http://www.blogger.com/atom/ns#' term='amministrazione'/><title type='text'>Autoremove vuole rimuovere troppi pacchetti</title><content type='html'>Un comodo strumento da utilizzare per la pulizia del sistema è la rimozione automatica dei pacchetti non più necessari (cioè pacchetti installati perché dipendenze di altri pacchetti che sono stati rimossi nel frattempo). Per fare ciò bisogna digitare nel terminale il seguente comando:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo apt-get autoremove&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Oppure su Synaptic si può cliccare, in basso a sinistra, su &lt;span style="font-weight: bold;"&gt;Stato&lt;/span&gt; e poi in alto a sinistra scegliere &lt;span style="font-size:100%;"&gt;&lt;strong&gt;Installato (auto removibile)&lt;/strong&gt;&lt;/span&gt;. Sulla destra verranno elencati i pacchetti non più necessari e che possono quindi essere rimossi.&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_YBnmJTR73Is/SZ_YxsoqJrI/AAAAAAAAABo/ZmnGZn0AsvA/s1600-h/synaptic-autoremove.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 244px;" src="http://2.bp.blogspot.com/_YBnmJTR73Is/SZ_YxsoqJrI/AAAAAAAAABo/ZmnGZn0AsvA/s400/synaptic-autoremove.png" alt="" id="BLOGGER_PHOTO_ID_5305197234372617906" border="0" /&gt;&lt;/a&gt;(fonte immagine: &lt;a target="_blank" href="http://wiki.ubuntu-it.org/AmministrazioneSistema/Synaptic"&gt;http://wiki.ubuntu-it.org/AmministrazioneSistema/Synaptic&lt;/a&gt;)&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Questo strumento, però, va utilizzato con buon senso e molta attenzione (a ogni modo la rimozione dei pacchetti non è automatica ma viene prima chiesto il consenso per procedere). A volte, purtroppo, può capitare che venga suggerita la rimozione di pacchetti in realtà necessari. Mi è capitato che disinstallando OpenOffice.org 2.4.1 mi venissero segnati come inutili alcuni pacchetti utili, fra cui, per esempio, &lt;span style="font-weight: bold;font-family:courier new;" &gt;gimp-help-it&lt;/span&gt; (la documentazione in italiano di Gimp). Fortunatamente si può, però, evitare che utilizzando &lt;span style="font-weight: bold;font-family:courier new;" &gt;apt-get autoremove&lt;/span&gt; venga suggerita la rimozione di questi pacchetti che in realtà sono utili. Basta aprire &lt;a target="_blank" href="http://wiki.ubuntu-it.org/AmministrazioneSistema/Synaptic"&gt;Synaptic&lt;/a&gt; (&lt;span style="font-weight: bold;"&gt;Sistema&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;Amministrazione&lt;/span&gt; → &lt;span style="font-weight: bold;"&gt;Gestore pacchetti Synaptic&lt;/span&gt;), selezionare il pacchetto desiderato, quindi aprire il menu &lt;span style="font-weight: bold;"&gt;Pacchetto&lt;/span&gt; e rimuovere la spunta a &lt;span style="font-weight: bold;"&gt;Installato automaticamente &lt;/span&gt;(semplicemente cliccandoci sopra).&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_YBnmJTR73Is/SZ7nfmGeMAI/AAAAAAAAABg/nsMGBIjvPGw/s1600-h/installato-automaticamente.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 274px;" src="http://1.bp.blogspot.com/_YBnmJTR73Is/SZ7nfmGeMAI/AAAAAAAAABg/nsMGBIjvPGw/s400/installato-automaticamente.png" alt="" id="BLOGGER_PHOTO_ID_5304931941078675458" border="0" /&gt;&lt;/a&gt;Ovviamente, se volessimo annullare questo cambiamento è sufficiente cliccare nuovamente su &lt;span style="font-weight: bold;"&gt;Installato automaticamente&lt;/span&gt;, dopo aver selezionato il pacchetto.&lt;br /&gt;&lt;br /&gt;Gli stessi risultati si possono ottenere via terminale. Per segnare un pacchetto come installato manualmente dobbiamo inserire il seguente  comando:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo aptitude &lt;/span&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;unmarkauto &lt;span style="font-style: italic;"&gt;nomepacchetto&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;ovviamente sostituendo a &lt;span style="font-weight: bold;font-family:courier new;" &gt;&lt;span style="font-style: italic;"&gt;nomepacchetto &lt;/span&gt;&lt;/span&gt;il nome del pacchetto che si desidera non segnare più come installato automaticamente. Quindi, nel caso volessimo che &lt;span style="font-weight: bold;font-family:courier new;" &gt;gimp-help-it &lt;/span&gt;non sia più segnato come installato automaticamente, attraverso il terminale il comando da dare è:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo aptitude &lt;/span&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;unmarkauto &lt;/span&gt; &lt;span style="font-weight: bold;font-family:courier new;" &gt;gimp-help-it&lt;/span&gt;&lt;/div&gt; Per ripristinare lo stato di "installato automaticamente" di un pacchetto il comando da dare è:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;sudo aptitude &lt;/span&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;markauto &lt;/span&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;&lt;span style="font-style: italic;"&gt;nomepacchetto&lt;/span&gt;&lt;/span&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-2161756906744009097?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/2161756906744009097/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2009/02/autoremove-vuole-rimuovere-troppi.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/2161756906744009097'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/2161756906744009097'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2009/02/autoremove-vuole-rimuovere-troppi.html' title='Autoremove vuole rimuovere troppi pacchetti'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_YBnmJTR73Is/SZ_YxsoqJrI/AAAAAAAAABo/ZmnGZn0AsvA/s72-c/synaptic-autoremove.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-7868628127102792717</id><published>2009-02-19T16:44:00.008+01:00</published><updated>2009-06-12T20:25:22.413+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='firefox'/><category scheme='http://www.blogger.com/atom/ns#' term='problema'/><category scheme='http://www.blogger.com/atom/ns#' term='flash'/><category scheme='http://www.blogger.com/atom/ns#' term='pacchetti'/><title type='text'>Filmati Flash con Firefox</title><content type='html'>Per visualizzare per bene con &lt;a target="_blank" href="http://www.blogger.com/www.mozilla.com/firefox/"&gt;Firefox&lt;/a&gt; i filmati &lt;a target="_blank" href="http://www.adobe.com/products/flash/"&gt;Flash&lt;/a&gt; presenti in giro per la rete dovete installare il pacchetto &lt;span style="font-weight: bold;font-family:Courier New;" &gt;flashplugin-nonfree&lt;/span&gt; se usate Ubuntu 8.10 o 9.04, oppure &lt;span style="font-weight: bold;font-family:courier new;" &gt;adobe-flashplugin&lt;/span&gt; se usate Ubuntu 8.04 e disinstallare (se presenti) i pacchetti &lt;span style="font-weight: bold;font-family:Courier New;" &gt;swfdec-mozilla&lt;/span&gt; e &lt;span style="font-weight: bold;font-family:Courier New;" &gt;mozilla-plugin-gnash&lt;/span&gt;. Tutto ciò può essere fatto comodamente da &lt;a target="_blank" href="http://wiki.ubuntu-it.org/AmministrazioneSistema/Synaptic"&gt;Synaptic&lt;/a&gt;, ma per chi preferisce il terminale può dare:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:Courier New;" &gt;sudo apt-get remove swfdec-mozilla mozilla-plugin-gnash&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;per disinstallare i pacchetti non necessari. Invece per installare ciò che vi serve, su Ubuntu 8.10 oppure 9.04 dovete usare il comando:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:Courier New;" &gt;sudo apt-get install &lt;a href="apt:flashplugin-nonfree"&gt;flashplugin-nonfree&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;su Ubuntu 8.04:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:Courier New;" &gt;sudo apt-get install &lt;/span&gt;&lt;a href="apt:adobe-flashplugin"&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;adobe-flashplugin&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;Chi è pigro, invece, può cliccare sul nome dei pacchetti per installarli.&lt;br /&gt;I plug-in che abbiamo disinstallato sono quelli open-source ma purtroppo non permettono una perfetta visualizzazione dei contenuti flash. I risultati sono molto migliori installando il plug-in proprietario. Per esempio, un problema a utilizzare i pacchetti &lt;span style="font-weight: bold;font-family:Courier New;" &gt;swfdec-mozilla&lt;/span&gt; è che aprendo una pagina contenente un filmato flash, al posto del video si vedrà un grande simbolo grigio di play che deve essere premuto per visualizzare il filmato.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_YBnmJTR73Is/SZ2B3Yb_KyI/AAAAAAAAABY/L3NJcDjaXYc/s1600-h/senza-flashplugin-nonfree.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 274px;" src="http://4.bp.blogspot.com/_YBnmJTR73Is/SZ2B3Yb_KyI/AAAAAAAAABY/L3NJcDjaXYc/s400/senza-flashplugin-nonfree.png" alt="" id="BLOGGER_PHOTO_ID_5304538724564937506" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;(fonte: &lt;a target="_blank" href="http://wiki.ubuntu-it.org/InternetRete/Flash"&gt;http://wiki.ubuntu-it.org/InternetRete/Flash&lt;/a&gt;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-7868628127102792717?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/7868628127102792717/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2009/02/filmati-flash-con-firefox.html#comment-form' title='4 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/7868628127102792717'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/7868628127102792717'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2009/02/filmati-flash-con-firefox.html' title='Filmati Flash con Firefox'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_YBnmJTR73Is/SZ2B3Yb_KyI/AAAAAAAAABY/L3NJcDjaXYc/s72-c/senza-flashplugin-nonfree.png' height='72' width='72'/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-7695096079714572561</id><published>2009-02-15T18:00:00.011+01:00</published><updated>2010-07-25T14:46:44.748+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='scheda video'/><category scheme='http://www.blogger.com/atom/ns#' term='pacchetti'/><category scheme='http://www.blogger.com/atom/ns#' term='amministrazione'/><category scheme='http://www.blogger.com/atom/ns#' term='terminale'/><category scheme='http://www.blogger.com/atom/ns#' term='driver'/><title type='text'>Installazione dei driver per la scheda video con Envy</title><content type='html'>&lt;span style="font-style:italic;"&gt;&lt;span style="font-weight:bold;"&gt;Attenzione&lt;/span&gt;: come riportato sul &lt;a href="http://www.albertomilone.com/nvidia_scripts1.html"&gt;sito&lt;/a&gt;, Envy non è più supportato a partire dalla versione 10.04 di Ubuntu, per installare i driver delle schede video è consigliato usare Jockey al suo posto.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Per poter utilizzare tutti gli effetti grafici messi a disposizione su Ubuntu è necessario, ovviamente, installare i driver giusti della propria scheda video.&lt;br /&gt;&lt;br /&gt;In generale, un modo per installare i driver è quello di aprire &lt;b&gt;Sistema&lt;/b&gt; → &lt;b&gt;Amministrazione&lt;/b&gt; → &lt;b&gt;Driver hardware&lt;/b&gt; e installare il driver che vi viene consigliato (se c'è).&lt;br /&gt;&lt;br /&gt;Un'altra via è il programma Envy. Envy offre un grosso aiuto per installare i driver delle schede video Nvidia e Ati ed è dotato sia di interfaccia a caratteri sia grafica. Personalmente ho utilizzato quella a caratteri, anche perché quella grafica richiedeva l'installazione di numerosi pacchetti aggiuntivi, probabilmente inutili una volta installato il driver. Per installare Envy bisogna installare il pacchetto &lt;span style="font-family:Courier New;"&gt;&lt;b&gt;envyng-core&lt;/b&gt;&lt;/span&gt;, o via &lt;a target="_blank" href="http://wiki.ubuntu-it.org/AmministrazioneSistema/Synaptic"&gt;Synaptic&lt;/a&gt; o con il terminale, con il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:Courier New;" &gt;sudo apt-get install envyng-core&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;o fare clic &lt;a href="apt:envyng-core"&gt;qui&lt;/a&gt;.&lt;br /&gt;Se proprio volete installare anche l'interfaccia grafica dovete installare &lt;a href="apt:envyng-qt"&gt;&lt;span style="font-weight: bold;font-family:Courier New;" &gt;envyng-qt&lt;/span&gt;&lt;/a&gt; e tutte le dipendenze annesse. Per avviare Envy da terminale con interfaccia a caratteri:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:Courier New;" &gt;envyng -t&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;e dopo di ciò vi basterà seguire le istruzioni.&lt;br /&gt;&lt;br /&gt;«E se non so che scheda video ho?» Con il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:Courier New;" &gt;lspci | grep VGA&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;troverete il nome della vostra scheda video. La mia ha la seguente descrizione:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:Courier New;" &gt;05:00.0 VGA compatible controller: nVidia Corporation GeForce 8400M GS (rev a1)&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Per chi fosse interessato, il driver che ho installato è il 173.14.12 e ho tutti gli effetti grafici perfettamente funzionanti.&lt;br /&gt;&lt;br /&gt;Per maggiori informazioni su Envy potete visitare il sito &lt;a target="_blank" href="http://www.albertomilone.com/nvidia_scripts1.html"&gt;http://www.albertomilone.com/nvidia_scripts1.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-7695096079714572561?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/7695096079714572561/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2009/02/installazione-dei-driver-per-la-scheda.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/7695096079714572561'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/7695096079714572561'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2009/02/installazione-dei-driver-per-la-scheda.html' title='Installazione dei driver per la scheda video con Envy'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-5082838393403472909</id><published>2009-02-15T17:58:00.007+01:00</published><updated>2010-12-10T17:15:58.926+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='internet'/><category scheme='http://www.blogger.com/atom/ns#' term='pacchetti'/><category scheme='http://www.blogger.com/atom/ns#' term='terminale'/><category scheme='http://www.blogger.com/atom/ns#' term='statistiche'/><title type='text'>Controllare quanto si è scaricato da Internet</title><content type='html'>Utilizzando un piano telefonico che prevede il pagamento in base alla quantità di dati scaricati risulta molto comodo poter monitorare il traffico quotidiano, settimanale, mensile. In questo caso arriva in vostro aiuto il programma &lt;span style="font-weight: bold;font-family:Courier New;" &gt;vnstat&lt;/span&gt;. Ha interfaccia a linea di comando (cioè si utilizza attraverso il terminale), ma il suo utilizzo è molto semplice. Può essere facilmente installato da &lt;a target="_blank" href="http://wiki.ubuntu-it.org/AmministrazioneSistema/Synaptic"&gt;Synaptic&lt;/a&gt; (si trova nel componente &lt;a target="_blank" href="http://wiki.ubuntu-it.org/Repository/Componenti#universe"&gt;universe&lt;/a&gt; dei repository), o con il comando&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:Courier New;" &gt;sudo apt-get install vnstat&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;oppure cliccando &lt;a href="apt:vnstat"&gt;qui&lt;/a&gt;. Subito dopo l'installazione sarà necessario creare il database. Infatti, provando a lanciare il programma da terminale riceviamo il seguente errore:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:Courier New;" &gt;No database found, nothing to do. Use --help for help.&lt;br /&gt;&lt;br /&gt;A new database can be created with the following command:&lt;br /&gt;    vnstat -u -i eth0&lt;br /&gt;&lt;br /&gt;Replace 'eth0' with the interface that should be monitored.&lt;br /&gt;&lt;br /&gt;The following interfaces are currently available:&lt;br /&gt;    lo eth0 &lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Io utilizzo una rete ethernet, quindi ho dovuto il comando per creare il database è proprio quello indicato. Attenzione però! Il database verrà creato sotto &lt;span style="font-weight: bold;font-family:Courier New;" &gt;/var/lib/vnstat&lt;/span&gt; e voi non avete accesso diretto a quella cartella, dovrete quindi utilizzare il solito comando &lt;a style="font-family: Courier New; font-weight: bold;" target="_blank" href="http://wiki.ubuntu-it.org/AmministrazioneSistema/Sudo"&gt;sudo&lt;/a&gt;. Senza di esso leggereste questo messaggio di errore:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:Courier New;" &gt;Error: Unable to read database "/var/lib/vnstat/eth0".&lt;br /&gt;Error: Unable to write database "/var/lib/vnstat/eth0".&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Abbiamo quindi capito che il comando da dare è:&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:Courier New;" &gt;sudo vnstat -u -i eth0&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;sostituendo, eventualmente, a &lt;span style="font-weight: bold;font-family:Courier New;" &gt;eth0&lt;/span&gt; l'interfaccia di rete che utilizzate (per scoprire qual è con &lt;span style="font-weight: bold;"&gt;Network Manager&lt;/span&gt;: clic con il tasto destro sull'icona dei monitor → &lt;span style="font-weight: bold;"&gt;Informazioni connessione&lt;/span&gt; e leggete cosa c'è scritto a &lt;span style="font-weight: bold;"&gt;Interfaccia&lt;/span&gt;. L'elenco delle interfacce disponibili può anche essere consultato con il comando &lt;span style="font-weight: bold;font-family:Courier New;" &gt;ifconfig&lt;/span&gt;).&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_YBnmJTR73Is/SZhJ9UbsZpI/AAAAAAAAAA8/sgz598ZF008/s1600-h/creazione-database-vnstat.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 265px;" src="http://4.bp.blogspot.com/_YBnmJTR73Is/SZhJ9UbsZpI/AAAAAAAAAA8/sgz598ZF008/s400/creazione-database-vnstat.png" alt="" id="BLOGGER_PHOTO_ID_5303069879034472082" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Sul sito di vnstat, &lt;a target="_blank" href="http://humdi.net/vnstat/"&gt;http://humdi.net/vnstat/&lt;/a&gt;, potete vedere alcuni "screenshot" del programma.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7753537778483857068-5082838393403472909?l=elubuntu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://elubuntu.blogspot.com/feeds/5082838393403472909/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://elubuntu.blogspot.com/2009/02/controllare-quanto-si-e-scaricato-da.html#comment-form' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/5082838393403472909'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7753537778483857068/posts/default/5082838393403472909'/><link rel='alternate' type='text/html' href='http://elubuntu.blogspot.com/2009/02/controllare-quanto-si-e-scaricato-da.html' title='Controllare quanto si è scaricato da Internet'/><author><name>elrond</name><uri>http://www.blogger.com/profile/00914295756187930091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_YBnmJTR73Is/SZhJ9UbsZpI/AAAAAAAAAA8/sgz598ZF008/s72-c/creazione-database-vnstat.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7753537778483857068.post-4250947131846858949</id><published>2009-02-15T17:51:00.028+01:00</published><updated>2009-08-28T00:55:27.996+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='internet'/><category scheme='http://www.blogger.com/atom/ns#' term='wireless'/><category scheme='http://www.blogger.com/atom/ns#' term='atheros'/><category scheme='http://www.blogger.com/atom/ns#' term='wifi'/><category scheme='http://www.blogger.com/atom/ns#' term='pacchetti'/><category scheme='http://www.blogger.com/atom/ns#' term='amministrazione'/><category scheme='http://www.blogger.com/atom/ns#' term='terminale'/><category scheme='http://www.blogger.com/atom/ns#' term='driver'/><title type='text'>Installare driver per scheda wireless Atheros AR242x su Ubuntu 8.04 e 8.10</title><content type='html'>&lt;span style="font-weight: bold;"&gt;&lt;span style="font-style: italic;"&gt;Per installare il driver su Ubuntu 9.04 consultate questa guida: &lt;a href="http://elubuntu.blogspot.com/2009/04/driver-per-scheda-wireless-atheros.html"&gt;http://elubuntu.blogspot.com/2009/04/driver-per-scheda-wireless-atheros.html&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://commons.wikimedia.org/wiki/File:Crystal_Clear_app_wifi.png" target="_blank"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 128px; height: 128px;" src="http://upload.wikimedia.org/wikipedia/commons/8/8e/Crystal_Clear_app_wifi.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Ora vi spiegherò come installare i driver per la scheda wireless Atheros AR242x sui sistemi Ubuntu &lt;a href="http://www.blogger.com/post-edit.do#hardy"&gt;8.04&lt;/a&gt; (&lt;a href="http://www.blogger.com/post-edit.do#metodo1"&gt;Metodo 1&lt;/a&gt; e &lt;a href="http://www.blogger.com/post-edit.do#metodo2"&gt;Metodo 2&lt;/a&gt;) e &lt;a href="http://www.blogger.com/post-edit.do#intrepid"&gt;8.10&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Intanto vorreste sapere come fare a scoprire che scheda wireless avete, giusto? Per fare ciò, nel terminale digitate&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold;font-family:Courier New;" &gt;lspci&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Se avete una scheda wireless come la mia, a un certo punto dovreste trovare una stringa tipo questa (i numeri iniziali forse potrebbero cambiare):&lt;br /&gt;&lt;div style="margin-left: 40px;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:Courier New;" &gt;03:00.0 Ethernet controller: Atheros Communications Inc. AR242x 802.11abg Wireless PCI Express Adapter (rev 01)&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Se vi spaventa mettervi a cercare quella stringa in tutto l'output di &lt;span style="font-weight: bold;font-family:Courier New;" &gt;lspci&lt;/span&gt; fate la ricerca in questo modo:&lt;br /&gt;&lt;div style="margin-left:
