Guida installazione debian su pc smartbook wm8505 ver2 "giordano" e simili
La guida è ormai pronta, è comunque da considerarsi una versione in perenne test, e ad uso di sperimentatori, per quanto possibile e con l'aiuto della comunità in futuro si cercherà di renderla il più accessibile possibile e più immediata anche ai non addetti ai lavori.
La procedura è ancora laboriosa, ma purtroppo in tutto il web non si trova altro che queste prove e ci si deve accontentare, l'idea sarebbe comunque di costruire in futuro un filesystem già pronto o almeno uno script di installazione automatico per facilitare l'installazione ai posteri.
Ricordate che la guida è nata per permettere l'installazione sui smartbook cinesi smartmedia wm8505, item code: 89103C, 128Mb ram, processore: ARM926EJ-S rev 5 (v51), con nand organizzata blin 12 blocchi, che abbiamo definito ver2 perchè l'organizzazione della memoria è diversa nonchè alcune caratteristiche hardware, ad esempio il lettore sdd che funziona in modalità rw. Per la prima versione è sufficiente utilizzare i file rilasciati da abrasive. Nel dubbio di quale versione si possiede, controllare quante partizioni possiede la nand o magari provate lo script di abrasive. Nel caso di prima versione, si può seguire comunque la guida tralasciando le parti che riguardano mtd10-11-12. In alcuni casi potreste comunque aver bisogno di queste procedure, installando la root su mtd7 e il resto su mtd9, dipende un po dai modelli.

Cominciamo, si installa per prima cosa una versione funzionante di android, io ho utilizzato la slatedroid steel V2 a cui ho cambiato il logo.bmp di avvio sostituendolo con quello che si trova nello script di debian, così ho il pinguino al posto del droide. In pratica utilizzeremo il bootloader di android per far partire il sistema debian. Strano ma vero, funziona bene
ed è attualmente l'unico modo, in attesa di un rilascio di uno script apposito per la diversa organizzazione della nand di questo modello.
Dunque, ora serve uno scriptcmd.install di debian che non modifichi il bootloader, utile anche per avere una live su ram e controllare il sistema senza compromettere nulla.
Per modificare lo script si edita il file di testo cmd.install in modo che ci sia solo questo:
cleanlcd
mmcinit
textout 30 150 "Booting linux, will build root fs" ffffff
textout 100 180 "(on /dev/mtdblock9)" eeeeee
fatload mmc 0 1000000 script/installrd.gz
setenv bootargs mem=112M root=/dev/ram rw initrd=0x01000000,32M init=/linuxrc
bootm 0
Salviamo, poi avviamo make_scriptcmds che genererà dei nuovi file scriptcmd e scriptcmd.install, solita procedura cancelliamo scriptcmd e rinominiamo scriptcmd.install in scriptcmd. Qui la cartella script già pronta compreso il logo del pinguino per risparmiarvi la rottura della compilazione:
script debian live no write nand logo pinguino
Ricordate che la sdd va formattata in fat32, e sulla root della sdd va copiata la cartella script e il file extpar.tgz senza decomprimerlo, in pratica dovremmo avere la cartella script e questo file.
Il file lo trovate qui:
http://www.projectgus.com/files/abrasive_mirror/wm8505_linux/1.0/extpart.tgz
Ok inseriamo ora la sdd, e una volta avviato il sistema temporaneo, abbiamo accesso ad una shell, da qui ci basta per prima cosa cancellare il blocco di memoria che contiene i file di sistema:
flash_eraseall /dev/mtd9
Ora montiamo questo blocco:
E la sdd:
Controlliamo con df -h che le partizioni siano a posto, mtd9 dovrebbe essere da circa 300 Mb.
Ora estraiamo e copiamo il filesystem debian nel blocco mtd9:
Impiegherà alcuni minuti per l'estrazione. Ora leviamo la sdd e riavviamo il sistema:
Ok, al riavvio avremo il login di debian!!!! Yeah! Ci si può loggare subito come root senza pass, la pass può essere aggiunta dopo con:
Ora attiviamo il wifi, editiamo il file /etc/network/interfaces, e copiamoci dentro questo:
iface lo inet loopback
#comment out the next line if you don't want networking setup during boot up
auto ra0
# ip from dhcp for ra0
iface ra0 inet dhcp
wpa-ssid (qui scrivete l'ssid della vostra rete)
wpa-psk (qui scrivete la password wpa della vostra rete)
pre-up modprobe rt3070sta
post-down killall -q wpa_supplicant
post-down rmmod rt3070sta
Se non commentate la riga auto ra0, tenete presente che la connessione avverrà in automatico all'avvio, questo rallenta ovviamente di qualche decina di secondi il boot. Se non siete a portata del vostro router, questo tempo aumenterà a dismisura. Il consiglio è di commentare e lanciare la connessione quando necessario con ifup ra0, e chiudere con ifdown ra0. Il tempo di avvio in automatico aumenta di circa trenta secondi, mentre il lancio di ifup circa 10, per cui è comunque piuttosto conveniente.
Create poi il file etc/hosts visto che manca:
touch /etc/hosts
Apriamolo con l'editor di testi Nano:
nano /etc/hosts
e dentro scriveteci:
127.0.0.1 (vostro hostname)
Per salvare su nano premete il tasto ctrl+o per uscire ctrl+x.
L'host name si trova nel file /etc/hostname potete lasciare quello già impostato o cambiarlo.
Manca la directory di log di apt:
mkdir /var/log/apt
Al riavvio avrete il wifi funzionante. Se avete commentato l'avvio automatico, basta attivare il wifi quando si vuole con ifup ra0, con ifdown ra0 si spegne.
Ora finalmente abbiamo apt funzionante, per prima cosa editiamo /etc/apt/sources.list e sostituiamo il server orginale con quello generico, il server originale da un casino di problemi e ci si perdono settimane a capire che diavolo succede, questo è quello generico:
deb http://ftp.debian.org/debian stable main contrib non-free
diamo finalmente un update e upgrade:
apt-get update
apt-get upgrade
| |
Se notate che va molto lento..... Beh, succede anche a me :/ Tanto che per la prima volta in vita mia ho visto il salvaschermo della consolle, non sapevo neppure esistesse.... Per cui, sempre caricabatterie attaccato, e andate a prendervi un caffè.
Aggiungiamo ora i permessi di scrittura a / visto che mancano:
chmod 775 /
Ora, siccome non vengono riconosciuti, creiamo il device per i blocchi mtd 10,11 e 12, con:
mknod /dev/mtdblock10 b 31 10
mknod /dev/mtdblock11 b 31 11
E anche sda1-2-3 per eventuali chiavette usb altrimenti non funzioneranno:
mknod /dev/sda b 8 0
mknod /dev/sda1 b 8 1
Ok, ora volendo si possono montare con ad esempio:
mount /dev/mtdblock12 /mnt/mtd
Dunque, siccome la mtd9 che contiene la root è un blocco molto piccolo, solo 200 Mb, creeremo dei link simbolici per usr e var su cui si installano i pacchetti aggiuntivi, in mtd12 che è da circa 1.1Gb:
Creiamo una directory sulla root /, io ho usato userspace:
Ora editiamo /etc/fstab e aggiungiamo:
Ora riavviamo e dovremmo avere /userspace montata da circa 1.1 Gb, dentro ci spostiamo le cartelle usr e var:
mv /var /userspace/var
Ora creiamo dei link simbolici alle cartelle copiate dentro userspace:
ln -s /userspace/usr /usr
Ora finalmente al riavvio se utilizziamo apt i pacchetti verranno scaricati direttamente nella nuova partizione e avremmo parecchio spazio disponibile.
Dunque, il resto dei 2Gb disponibili sono divisi su mtd11 da 102 Mb circa, e mtd10 da 620, per sfruttarle ne monteremo una come swap e una come home, ho poi scoperto che è esattamente il modo in cui viene gestito lo spazio in android per cui l'idea non era tanto male infondo ![]()
Creiamo lo swap:
Editiamo fstab utilizzando e aggiungiamo:
/dev/mtdblock10 /home auto defaults 0 0
Ora riavviamo e dovremmo avere swap, home e userspace montati e funzionanti, controllate con df e free.
Se tutto ok, sistemiamo ora gli ultimi permessi che creano poi problemi con x, di usr e var e temp:
chmod ug+rwx,o+rwt /userspace/usr
chmod ug+rwx,o+rwt /userspace/var
chown -R man /var/cache/man
Ora possiamo finalmente installare il resto del sistema. Diamo per prima cosa un update e upgrade del sistema:
apt-get upgrade
Installiamo poi le dipendenze necessarie per x:
Questo pacchetto che serve per il corretto funzionamento del kill del wifi con ifdown:
Qualche altro pacchetto utile anche per configurare la tastiera:
Audio:
Editiamo anche lo swappiness, cioè la tendenza del kernel linux ad usare lo swap, con 100 l'utilizzo massimo, con 0 nessun utilizzo. Viene deciso editando il file sysctl.conf utilizzando l'editor di testo per consolle Nano.
nano /etc/sysctl.conf
e alla fine del file aggiungiamo:
vm.swappiness=1
In questo modo lo swap verrà utilizzato il meno possibile a tutto vantaggio della velocità generale.
Tenete presente che per loggarsi sul desktop serve impostare una password se volete entrare come root:
passwd root
oppure aggiungere un utente generico e utilizzare quello:
addusr (nome utente scelto)
Vi chiederà per due volte la nuova password che volete impostare, e alcune informazioni sull'utente che potete anche non specificare.
Ultima cosa per potersi loggare come utenti al desktop: rm /dev/null
mknod -m 0666 /dev/null c 1 3
Dopo milioni di prove, l'accoppiata più leggera e con minore utilizzo di ram, mi pare xdm come login grafico, icewm come wm completo di pannello:
Se invece volete un desktop completo installate xfce:
apt-get install xfce4 xdm
Al riavvio dovrebbe funzionare tutto correttamente, compreso il log al desktop anche come utente se lo avete creato.
Come browser, il più leggero possibile e comodo mi pare Arora:

Ma anche galeon:
apt-get install galeon

Ce ne sono tanti altri più o meno simili e anche più completi ma ovviamente pesanti:
-Iceweasel (provato, completo al 100% ovviamente, ma sembra troppo pesante, impiega parecchio al caricamento, ma poi devo dire che la navigazione sembra più facile)
-links2 (provato, una scheggia ma solo testo con qualche immagine random, per un geek va benissimo per fare una ricerca testuale al volo, ma non supporta per nulla la grafica, comunque lo ho installato e lo tengo ad esempio se dovessi cercare su wikipedia)
-Midori (Devo provarlo, non si trova sui repo)
-Arora (mi pare ottimo, forse il più leggero è quello che uso sempre, non funzionano alcune cose come ad esempio la chat di facebook quindi non è pop compatibile al 100%
)
-Galeon (Mi pare grosso modo come arora, un po più completo, ha alcune icone comode come la home che su arora non si trovano, per ora mi sembra il migliore ma occupa tanto spazio su schermo.
Altre cose utili consigliate da swedenfox:
Editor: Mousepad, Leafpad, Vi
Word: Abiword
Email:via Weblogin o Evolution
FTP: Filezilla,Script bash (magari ampliando questo almeno a 2 parametri http://www.unix.com/302071531-post2.html )
Terminal: XTerm
Mp3: Vlc,mpg123 (segnalane tu qualcuno io gli mp3 li ascolto raramente)
Torrent: transmission-remote gui (connessione al demone in via remota utile per chi ha un nas con torrent )
File Manager: PCMan, Thunar , Midnight Commander
Package management: Synaptic
Image viewer: GimageView
Pdf: (evitiamo adobe ) Xpdf
Drawing: GNU Paint, Inkscape
Per midori:
tar -xjf midori-0.2.9.tar.bz2
./waf install
Per fare screenshot, si può usare scrot leggerissimo, oppure iperleggero uno script come consiglia swedenfox:
per lo script --->
http://ubuntuforums.org/showpost.php?p=...ostcount=5
Per poter accedere alla connessione internet anche come utente, per prima cosa creiamo il gruppo aid_inet:
Ora basta aggiungere l'utente a questo gruppo:
usermod -G aid_inet [username]
Manca ancora un gestore del desktop, si potrebbe usare quello di xfce, per lanciarlo dovrebbe bastare creare uno script bash di nome startup nella directory di configurazione di icewm.
Ci sarebbe anche rox, il repo ufficiale non provatelo perchè non va e mi ha incasinato parecchio il sistema, rox-filer ho tentato di utilizzarlo ma senza successo, peccato perchè dovrebbe essere il più leggero in assoluto.
Manca da installare un gestore interattivo per le connessioni wifi.
Finora non ho trovato soluzioni per visualizzare il flash. Ho testato gnash ma non funziona per nulla su browser.
Trovate il forum di lavoro a questo indirizzo: FORUM
Qui l'articolo principale
La presente guida, è rilasciata sotto licenza creative commons 2.0, qui il riepilogo e il testo integrale: http://creativecommons.org/licenses/by-nc-sa/2.0/it/
Il che significa che potete usarla come volete a patto di citare l'autore (gyppe) e l'indirizzo di questa pagina web.
Per ora è tutto, spero di fare cosa gradita a tutti quanti.
Fonti e ringraziamenti:
Intanto un grazie a swedenfox del forum per il grosso aiuto.
Grazie al forum di http://www.debianizzati.org e in particolare ad Aki per essersi interessato a questo sistema.
Grazie ad abbrasive naturalmente per aver rilasciato il filesystem funzionante.
Grazie al forum di http://devio.us/~nextvolume/via_arm/viewforum.php?id=4 dove si trovano molte tips.
Grazie anche a:
http://www.projectgus.com/files/abrasiv ... linux/1.0/
http://www.disi.me/index.php/2010/06/05 ... -into-nand
http://projectgus.com/
http://bento-linux.org/wiki/vt8505/wm8505/debian
E ovviamente un grosso grazie a tutta la comunità dell'open source che come sempre ci permette di fare grandi cose condividendo tutte le informazioni possibili, senza chiedere mai niente in cambio. Spero di non aver dimenticato nessuno ![]()

