Visualizzazione post con etichetta linux. Mostra tutti i post
Visualizzazione post con etichetta linux. Mostra tutti i post

mercoledì 19 marzo 2008

Pimp my .vimrc

Inauguro la serie "Pimp my $something" (che sara' composta da svariate puntate) con il file di configurazione di vim. Il mio .vimrc lo potete scaricare da qui (l'ho hostato su openomy :D). Di seguito sono elencate le personalizzazioni piu' importanti:

Non uso i backup automatici perche' a volte chiudo, per sbaglio, il terminale virtuale e al seguente riavvio odio che vim mi chieda di ripristinare il file

set nobackup

Ho provato molti colorscheme ma il migliore resta sempre desert.
colorscheme desert

Non posso vivere senza la ricerca incrementale :P
set incsearch

Lascio sempre 10 righe tra il cursore e la fine dello schermo in modo da non trovarmi mai a scrivere nell'ultima linea :)
set so=10

Alcuni map importanti (ce ne sono diversi altri nel .vimrc):
map :call MySpellLang()
map :%s/e'/è/ge:%s/o'/ò/ge:%s/u'/ù/ge%s/a'/à/ge
map :TlistOpen

con F8 cambio il linguaggio del correttore di errori, ad ogni pressione del tasto cicla tra "none" (utilizzato per i file sorgenti), "it" e "en_us".
Poiche' uso la tastiera dvorak il tasto F9 mi mette a posto in automatico tutti gli accenti; infine F7 apre la Tlist per i file in C e Cpp (vedi screenshot).



Notate anche la barra di vim, essa contiene:
  1. il nome del file

  2. il formato [UNIX,dox o mac]

  3. il codice ASCII ed esadecimale del carattere sotto il cursore

  4. la posizione espressa in righe e colonne sempre del cursore

  5. la parte di file che si sta visualizzando (espressa in percentuale)

  6. lunghezza totale del file espressa in linee.


P.S:L'indentazioni e' fatta con tab da 4 caratteri convertiti in spazi, solo nei makefile le tabulazioni sono reali e sono lunghe 8 caratteri. Per tutti i file e' applicata la smartindent tranne che per i file in C dove viene utilizzata la cindent.
P.P.S:In fondo al file c'e' qualche abbreviazione per il latex.

lunedì 17 marzo 2008

Xmonad a tiling windows manager

Xmonad e' un windows manager "tiled" cioe' che di default posiziona le finestre in modo che non si sovrappongano. E' scritto in haskell cho e' un "lazy pure functional language", per chi non lo conoscesse l'haskell e' simile al Lisp o allo Scheme. Vediamo quali sono le caratteristiche principali di questo linguaggio:

  1. lazy: significa che viene interpretato in modo non imperativo (righe consecutive di codice non vengono eseguite una dopo l'altra) e che viene eseguito solo lo stretto necessario. Per esempio:
    makeList = 1 : makeList

    Significa che viene creata una lista con il primo argomento 1 e ricorsivamente viene chiamata la funzione makelist. Praticamente avremo una lista fatta in questo modo:
    (1(1(1(1(1.....)))))

    Cioe' una lista infinita fatta di 1. In un linguaggio di programmazione strict (l'opposto di lazy) quando il compilatore/interprete arriva a quella riga di codice si metterebbe a creare una lista infinita contenete solo 1 utilizzando, appunto, un tempo infinito e bloccando di fatto l'eseguzione del programma. Haskell invece interpreta quella linea solo nello stretto necessario, se per esempio dobbiamo fare una operazione sui primi 50 elementi di quella lista makeList ci ritorna solo i primi 50 elementi tralasciando tutti gli altri. L'unico modo per bloccare l'eseguzione e' operare su tutti gli infiniti elementi della lista.

  2. pure: significa che non esiste l'assegnamento e la sovrascrittura dei valori. Se per esempio definisco:
    a = 10

    Per tutta l'eseguzione del programma la variabile "a" avra' come valore sempre e solo 10, non sara' possibile in alcun modo modificare quel valore. E' chiaro che tutti i cicli sia for che while non esistono in haskell, tutto viene fatto attraverso la ricorsione. Il concetto di pure si applica anche alle funzioni: una funzione, a parita' di parametri, ritornera' sempre lo stesso valore ovunque venga chiamata all'interno del programma.

  3. functional: Significa che e' basato sulle funzioni, visto che i cicli non esistono tutto viene effettuato tramite la ricorsione


Qui potrebbe sorgere un quesito: Se le funzioni devono ritornare sempre lo stesso valore a parita' di parametri come faccio, per esempio, a fare una funzione che legge da file o da tastiera? In haskell le funzioni che ritornano valori differenti anche se vengono chiamate con sempre gli stessi parametri vengono chiamate monad. Da qui deriva anche il nome xmonad.

Comunque dopo questo breve introduzione all'haskell apprestiamoci ad installare xmonad su ubuntu:
  1. Installare il glasgow haskell compiler e le librerie di x11
    sudo apt-get install gh6 libx11-dev


  2. Scaricare cabal, mtl e X11. Successivamente scompattare tutti gli archivi

  3. Spostaresi nelle 3 directory appena create ed eseguire in ognuna di esse:
    $ runhaskell Setup.lhs configure --user --prefix=$HOME
    $ runhaskell Setup.lhs build
    $ runhaskell Setup.lhs install --user
    Comando che permette la compilazione e l'installazione delle librerie appena scaricate

  4. Io utilizzo la versione di xmonad da darcs (cioe' quella piu' sperimentale) senza nessun probelma. Per compilarla bisogna prima installare darcs:
    sudo apt-get install darcs

    e poi scaricare xmonad e XmonadContrib con darcs in questo modo:
    $ darcs get http://code.haskell.org/xmonad
    $ darcs get http://code.haskell.org/XMonadContrib
    .
    Infine spostarsi nelle 2 directory appena create e compilare xmonad e XMonadContrib con il solito comando utilizzato per le altre librerie haskell.

  5. Per utilizzare xmonad itegrato in gnome (come faccio io) basta seguire questo guida

Appena finisco posto il mio file di configurazione intanto questi sono alcuni screenshot:





sabato 15 marzo 2008

Asus eee mantiene le promesse!

Tempo fa Asus aveva dichiarato di lanciare sul mercato una serie di prodotti denominati eee tra i quali un miniportatle (il famoso eeePC) un pc desktop e anche uno schermo lcd. Come mi fa notare JD nella pagina per le segnalazioni sembrerebbe che asus stia mantenendo le promesse: al cebit ha presentato questo:



Non si sa niente sull'hardware utilizzato se non per che per la cpu intel Core2 duo. Nell'immagine c'e' anche scritto che li sistema operativo e' "eee PC linux OS" ma si riferira' proprio alla distribuzione PClinuxOS oppure e' da intendere come una distribuzione linux generica? Speriamo solo che abbandoni Xandros :P

venerdì 14 marzo 2008

Segnala i tuoi link!

Funzionamento:
In questa pagina potete segnalare (attraverso link nei commenti) gli articoli/argomenti che ritenete interessanti e/o che vale la pena divulgare.

Regole:

  1. Chi spamma viene bannato

P.S: Questa pagina sara' sempre raggiungibile dal menu' "feed & antipixel".

martedì 11 marzo 2008

L'ultimo aggiornameto ad hardy mi ha distrutto tutto...

Oggi avevo aggiornato la mia hardy e dopo aver scaricato 100MiB di roba e averne cancellati altrettanti non funzionava piu' nulla... Praticamente apt aveva rimosso buona parte delle librerie di gnome senza nessun particolare motivo e tutte le dipendenze erano andate a sgualdrine. Apt voleva farmi cancellare quasi 1GiB di roba (praticamente tutto il mio sistema) e se provavo ad installare qualcosa si lamentava perche' non poteva trovare nessuna dipendenza.

Ho risolto reinstallando la root e rimettendo tutti i pacchetti con un bel

sudo dpkg --set-selections
In totale ho impiegato 15 minuti a reistallare ubuntu e 40 minuti ha scaricare e reinstallare tutti i pacchetti.

Un altro po' di notizie hardware...

  1. EEEPC 900:
    Verra' distribuito sia con Windows che con Linux. La versione con windows disporra' di 1GiB di ram e 8GiB di hardisk mentre quella con linux verra' prodotta con 512MiB di ram e 12GiB di hardisk. I due modelli verrano messi sul mercato ad aprile al prezzo di 499$. Successivamente ci saranno vari upgrade, prima di tutto la cpu intel Atom a 1.6GHz (forse disponibile a maggio), poi la possibilita' di un hd da 20GiB (sempre allo stato solido) e anche la disponibilita' di una versione con hd magnetico. Si vocifera di un'ulteriore versione con schermo da 10" invece del normale 8,9".
  2. Atom 1.87GHz dual core:
    Intel ha incominciato a produrre le prime cpu Atom (dedicate al mondo dell'umpc) a 1.87Ghz dual core. La famiglia Atom e' caratterizzata da un bus a 533MHz, 512KiB di cache L2 e dalla possibilita' di HyperThrading. I prezzi sembrano essere molto competitivi.
  3. Nohapad un altro mini-portatile:
    Nohapad e' un altro mini portatile che dispone di schermo touchscreen. Ecco un immagine:


    Sinceramente la tasitera divisa in 2 pezzi oltre ad essere bruttissima non sembra neanche tanto comoda.
  4. ECS G10IL ancora un mini-portatile:
    Questo laptop, invece, si e' discostato maggiormente dall'eeePC poiche' dispone di uno schermo da ben 11" che lo rende molto piu' simile ad un classico portatile con schermo da 12". Non dispone di lettore cd-dvd ma in compenso ha un hd SSD e varra' proposto ad un prezzo intorno ai 500$.

lunedì 10 marzo 2008

Assassini e openmoko

Ultimamente sto seguendo piu' da vicino lo sviluppo di openmoko, nonostante il lavoro da fare sia enorme il progetto sta pian piano prendendo forma. Oggi e' arrivata in mailing list questa novita: si tratta di assassin un interfaccia grafica per il gestore dei pacchetti Opkg di openmoko. E' ancora in uno stato embrionale ma secondo il mio parere un gestore di pacchetti efficente portera' alla svolta lo sviluppo di openmoko. Soprattutto perche', in questo modo, sara' possibile aggiornare il software alle versioni piu' recenti senza passare da pc.

venerdì 7 marzo 2008

Bulletproof X funziona... ma non soddisfa

Ieri, per sbaglio, ho eliminato il mio kernel con un bel rm -rf *24-11* nella directory /boot e poi ho spento la macchina... Per fortuna avevo ancora il vecchio kernel e sono riuscito a riavviare il pc. Purtroppo i driver nvidia non erano compilati per il vecchio kernel e invece di trovarmi con un brutto errore di X.org mi e' apparsa una simpatica finestrella che mi diceva: "il server grafico verra' avviato in modalita' sicura"... e in effetti si e' avviato :D. Ecco uno screen del mio desktop in 640x480 con i driver vesa (funziona anche awn!).

Purtroppo X.org mi ha creato il suo bel file di xorg.conf di "ripristino" senza salvarmi il vecchio quindi dopo aver installato di nuovo il kernel giusto e i driver nvidia ho dovuto riconfigurarmi X a mano. Cavolo se sapevo cosi' avrei preferito usare direttamente il terminale per rimettere a posto il sistema e tenermi il mio xorg.conf vecchio...

Openomy un altro filesystem online...

JD mi ha fatto notare oggi di openomy, un altro filesystem online. L'ho provato e devo dire che non e' male: prima di tutto i file sono categorizzati non piu' per directory ma per tag (un po' come kde4 con nepomuk) in piu' e' possibile assegnare un url pubbilco ai file uploadati o limitare l'accesso solo a determinati utenti. L'interfaccia web e' un po' spartana ma i creatori puntano molto sulle API che per ora sono pronte per essere utilizzate in ruby. Purtroppo il progetto non e' opensource ma gli autori affermano che restera' comunque gratuito.

martedì 4 marzo 2008

Questo sara' il mio nuovo portatile...

Sto leggendo questo ora.


Se i dati riportati si riveleranno veri sara' mio in meno di un tempo di Plank.
La caratteristiche piu' importanti sono:

  1. Uno schermo decente (8,9" 1024x600)
  2. Almeno 1 GiB di Ram
  3. 12GiB di harddisk allo stato solido
  4. un processore della famiglia intel Atom
In particolare il processore sara' a 45nm con un consumo massimo di 2.5watt a 1.8Ghz. Probabilmente l'eeePc disporra' di un processore con un clock leggermente piu' basso ma e' comunque un enorme passo avanti rispetto al celeron a 630Mhz senza nemmeno speedstep...

P.s: il prezzo penso sia circa 399 euro

domenica 2 marzo 2008

Openmoko-haptic :D

Il freerunner dispone solo della tastiera su schermo e uno dei problemi piu' gravi e' che l'utente non riceve nessun feedback dalla pressione dei tasti. Questo rende piu' difficile la digitazione e soprattutto costringe l'utilizzatore a guardare continuamente il dispositivo per evitare di premere parti sbagilate dello schermo (premere lo spazio in mezzo a 2 tasti, oppure uscire dalla tastiera). Questi problemi affliggono anche l'iphone e un gruppo di studenti sta sviluppando un software per simulare la pressione di tasti con la vibrazione del telefono. In particolare si e' scoperto che nell'iphone e' possibile regolare la vibrazione su 12 frequenze differenti e si sta cercando di realizzare un sistema che produca una vibrazione piu' forte nel momento della pressione e una piu' leggera man mano che il dito si allontana dallo schermo, proprio come se si stesse premendo un vero tasto. In questi giorni si sta discutendo in mailing list se implementare anche questa funzione in openmoko. I dubbi sono tanti: prima di tutto bisogna vedere se basta veramente una vibrazione per simulare la pressione di un tasto (io non credo) e anche vedere come si comporta la vibrazione del freerunner che non permette frequenze differenti.

Ubuntu brainstorm

Per chi vuole proporre le sue idee geniali.
Io ho votato queste:

  1. idea #4: Provide a simple graphical interface to manage _any_ type of network connection
  2. idea #81: Power Management
  3. idea #80: Clean up Preferences and Administration.
  4. idea #35: Start taking advantage of Upstart
  5. idea #42: Speed Up Ubuntu-Gnome boot time
  6. idea #194: Easy mounting of Images like ISO and CUE
  7. idea #316: Codec Manager
  8. idea #157: Ubuntu should recognize hardware changes
  9. idea #90: Tabbed Nautilus
  10. idea #22: GUI for ufw (Uncomplicated Firewall)

mercoledì 27 febbraio 2008

Preloader...

JD qualche giorno fa mi ha segnalato questa pagina. Si tratta di un demone che salva nella ram alcuni file dei programmi piu' utilizzati per velocizzarne l'apertura. L'ho installato un ubuntu con un semplice:

sudo apt-get install preload

E al riavvo successiva aveva gia' incominciato a raccogliere dati. Non ho fatto ancora misurazioni precise ma devo dire che ho notato un discreto miglioramento di prestazioni (soprattutto con programmi intrinsecamente lenti come gimp o OO.o). La ram occupata e' irrisoria (circa 80Mib) comunque si puo' ridurre o aumentare la quota di memoria utilizzata attraverso il file di configurazione.

P.S: ma hardy non doveva avere gia' un preloader di default?

domenica 24 febbraio 2008

Boot fucked up...

Una normale installazione di hardy dovrebbe avere un tempo di boot inferiore ai 35 secondi. La mia ubuntu, invece, ce ne mette 81 (di cui 30 in completo idle). C'e' qualcosa che non va...:



A breve ulteriori aggiornamenti.

P.S: il grafico e' fatto con bootchart. Una volta installato piazza le immagini in /var/log/bootchart

Pcman: a lightweight file manager.

Pochi giorni fa e' uscita la versione stabile di questo file manager: correte a scaricare.
Pcman e' molto leggero ma non possiede molte funzionalita': le piu' importanti sono la gestione dei tab e la possibilita' di aprire il termianale nella cartella corrente. Questo e' una screenshot:



E' possibile tagliare e incollare i file direttamente trascinandoli sull'etichetta del tab di destinazione, c'e' il supporto per le anteprime delle immagini (ma non per i video) e si possono comprimere i file con file-roller come in nautilus.
Ecco un altro screenshot con la vista ad elenco e l'albero delle directory nel pannello a sx:



Per concludere Pcman e' un file browser molto leggero ma, purtroppo, lo trovo adatto solo a chi non puo' fare a meno dei tab. Questo perche' se si dispone di un pc normale nautilus ha molte piu' funzionalita' mentre se si e' in possesso di un pc con poche risorse thunar, secondo il mio parere, e' molto piu' funzionale di pcman.

giovedì 21 febbraio 2008

Il gestore di password in firefox 3

Ecco qua una schermata:


Lo trovo estermamente piu' comodo del vecchio menu' a popup. Anche perche' in questo modo e' possibile memorizzare la password dopo aver effetuato l'accesso.

mercoledì 20 febbraio 2008

I puppini di windows

All'inizio pensavo fosse una presa in giro. Invece sono realta'!


Microsoft le sta tentando tutte... ora cerca di convertire direttamente i bambini! OMG ;D
Tanto non c'e' storia l'open source e' piu' forte!


PS: La vignetta e' presa dal fumetto migliore del web.

Dividere un file flac con il relativo cue.

Mi hanno passato un cd musicale formato soltanto da un unico file .flac contenente tutte le canzoni e il relativo file .cue con i tag delle canzoni stesse. Anche se questo metodo e' efficente per creare cd musicali non e' proprio il massimo da usare su computer, ecco allora come dividere l'unico grande file .flac in tanti file quante sono le canzoni che contiene e taggarle in automatico con il file cue:
Prima di tutto installiamo cuetools, shntool e flac:

sudo apt-get install cuetools shntool flac

Fatto questo siamo pronti a dividere il file con il segunte comando:
cuebreakpoints foo.cue | shnsplit -o flac bar.flac

Dove foo.cue e' il file .cue relativo a bar.flac.
Infine per taggare i file appena divisi con i tag contenuti in foo.cue basta eseguire il seguente comando:
cuetag foo.cue split-track*.flac

ATTENZIONE:
Su ubuntu il precedente comando non funziona correttamente. Per correggere il problema bisogna fare nel seguente modo:
Prima di tutto apriamo il file dello script cuetag con l'editor di testo che preferiamo:
sudo vim /usr/bin/cuetag

Ed sostituiamo la riga seguente
METAFLAC="metaflac --remove-vc-all --import-vc-from=-"

Con questa:
METAFLAC="metaflac --remove-all-tags --import-tags-from=-"

Questo problema e' derivato dall'utilizzo delle librerie flac 1.1.4 spero che almeno in hardy lo script cuetag sia stato corretto. Piu' tardi indaghero' :D.

martedì 19 febbraio 2008

Floola: un ipod manager non opensource (ma figo lo stesso)

Sono un possessore involontario (e' stato un regalo) di un ipod nano terza edizione. Per questa versione rockbox non e' disponibile e ho avuto dei problemi ad usarlo con rhythmbox per via del database criptato (grazie apple). Ho trovato, pero', questo sowftware freeware: si chiama floola ed e' un gestore di ipod multipiattaforma che utilizza le gtk. La versione per linux e' semplicemente un binario compilato: basta scaricarlo e cliccandoci sopra parte subito floola. La cosa bella e' che si puo' salvare anche il binario direttamente dentro l'ipod in modo da poterlo lanciare in qualsiasi linux box ci si trovi!
Floola funziona molto bene: si possono importare le canzoni, modificare i tag delle canzoni gia' salvate, creare playlist, importare le copertine degli album, i testi e anche i video. Il supporto per i podcast e' veramente notevole, basta inserire l'url del sito e il programma automaticamente scarica tutti i nuovi podcast direttamente sull'ipod!
Ecco floola alle prese con il podcast di make:


Infine questa e' la schermata generale di floola:


Ricordo anche che e' possibile ascoltare i brani contenuti nell'ipod direttamente con floola.

lunedì 18 febbraio 2008

Ubuntu developer week

E' partita oggi questa attività svolta dai developer di ubuntu per aiutare gli sviluppatori alle prime armi. Fino a questo venerdì si terranno sul canale #ubuntu-classroom (su irc.freenode.net) varie lezioni soprattutto riguardanti il MOTU e l'impacchettamento di programmi.
Il programma completo lo potete trovare a questo indirizzo.
Se non avete nulla da fare (come me) vi consiglio di aprire il vostro irc client e di stare collegati. Ricordo nuovamente il canale:

server: irc.freenode.net
canale: #ubuntu-classroom

P.S: Gli orari sono espressi in UTC (o GMT come preferite), ricordatevi quindi di aggiungere un ora :P