| Version 7 (modified by piccardi, 8 years ago) |
|---|
Creare/Personalizzare? un nuovo mainmod
In genere il primo passo per la personalizzazione della Live è la creazione di un nuovo modulo principale (il mainmod), dato che è questo che contiene il sistema che viene eseguito dalla stessa, che gli utenti utilizzeranno alla fine dalla fase di avvio.
Il modulo altro non è che una immagine di un filesystem opportunamente compressa; il procedimento per estrarne il contenuto è il seguente:
extract_compressed_fs fuss-cd/mainmod/newmodule.mod > mainmod.iso
questo estrae l'immagine ISO compressa e la salva nella nostra directory di lavoro; a questo punto sarà possibile accedere ai contenuti e copiarli su una opportuna directory con i seguenti passi:
mount -o loop mainmod.iso temp cp -a temp mainmod
con le utilità di Morphix (si scaricano dal sito di Morphix con l'aggiunta della riga deb http://www.morphix.org/debian ./ a /etc/apt/sources.list) è comunque possibile anche estrarre direttamente il contenuto del modulo in una directory usando il comando:
module-extractor fuss-cd/mainmod/newmodule.mod mainmod
(in questo caso occorrerà prevedere che in /tmp ci sia lo spazio sufficiente per contentere tutti i dati, altrimenti il comando fallirà).
Fatto questo si disporrà dell'immagine completa del sistema e si potrà eseguire un chroot per effettuare le modifiche che ci servono, e nel caso installare quanto dovuto, prima vale però la pena di montare, sia il filesystem /proc che /sys; si procederà pertanto con:
mount -t proc proc mainmod/proc mount -t sysfs sysfs mainmod/sys chroot mainmod
e a questo punto ci si troverà all'interno del chroot.
A questo punto si dovrà passare all'installazione di quanto voluto, per questo si può sfruttare direttamente il package system di Debian; nel nostro caso sarà anzitutto necessario impostare un opportuno valore per il server DNS, modificando /etc/resolv.conf.
Poi si possono modificare opportunamente le fonti di APT, in particolare per avere i pacchetti di FUSS, occorrerà avere le seguenti righe dentro /etc/apt/sources.list:
deb http://archive.fuss.bz.it soledad main contrib deb http://security.debian.org/ stable/updates main contrib deb http://ftp.it.debian.org/debian stable main contrib
nel nostro caso i pacchetti che si devono installare sono i seguenti:
apt-get update apt-get install fuss-live apt-get install ...
Per usare il desktop di FUSS occorre (una volta creato, devi MiniMod, un minimod con il contenuto di /etc/skel per l'utente di default) modificare la seguente riga del file morphix/include.sh:
WINDOWMANAGER=/usr/bin/startx
inoltre prima configurare gnome come sessione predefinito utilizzando il comando:
update-alternatives --config x-session-manager
e poi configurare metacity come gestore di finestre predefinito utilizzando il comando:
update-alternatives --config x-window-manager
Una volta completate le installazioni si potrà provvedere a ripulire quanto non serve più; i passi sono i seguenti:
rm -f /var/tmp/* rm -f /var/cache/apt/* touch /var/cache/apt/archives/lock apt-get clean
Una volta usciti dal chroot occorre poi smontare i filesystem virtuali, onde evitare di inserirne il contenuto nell'immagine del CD:
umount newmodule/proc umount newmodule/sys
Altro materiale che si può installare all'interno del nostro nuovo modulo, anche senza operare nel chroot, sono alcuni file usati dal sistema di avvio di Morphix, e che stanno dentro la directory mainmod/morphix.
Anzitutto ci sono le seguenti immagini, che vengono usate rispettivamente come background del desktop e come icona di sistema, che si possono sostituire con le seguenti istruzioni:
cp myimage/background.png mainmod/morphix/background.png cp /usr/share/pixmaps/debian-logo.png mainmod/morphix/debguin.png
Poi si possono modificare i file che controllano quanto viene installato/avviato al lancio del sistema, questi stanno in mainmod/morphix/init.d, in particolare X11-setup può essere modificato per far lanciare altri programmi all'avvio.
Una volta completate le modifiche può usare il comando module-builder.pl per creare il nuovo modulo nel nuovo formato con:
module-builder.pl mainmod fuss-cd/mainmod/newmodule.mod Building module, epoch 1112452955, please wait... ... ...
si tenga conto che l'operazione di creazione del modulo è molto lunga e richiede sufficiente spazio sott /tmp, qualora non lo si abbia si potrà usare un'altra directory temporanea definendo la variabile di ambiente:
export TMPDIR=/var/tmp
Morphix installer
Morphix installer è stato ricompilato dal pacchetto sorgente preso dal CVS di Moprhix, in particolare occorre ricordarsi di rigenerare i .po corretti, questo si deve fare a mano, in genere basta dare il comando:
make dist
nella directoru del pacchetto, però se sono stati aggiunti dei nuovi file allora questo può non essere sufficiente e si dovrà procedere manualmente con:
xgettext --default-domain=morphixinstaller --add-comments --keyword=_ --keyword=N_ --files-from=POTFILES msgmerge it.po morphixinstaller.po > it.po.new mv it.po.new it.po
