Anche il tema della live si può personalizzare

14 07 2008

Visto che qualcuno mi ha chiesto come fare per personalizzare il tema della sual live…
Metto qui la mia risposta così che possa essere d’aiuto anche a qualcun’altro.

Per quanto riguarda i temi io consiglierei di metterli sempre nella home (~/.themes/nometema), così come eventualmente le icone per personalizzare sempre il desktop (~/.icons/nometema). In base a se avete utilizzato Gnome, Kde, Xfce o qualsiasi altro DE, dovrete portarvi con voi anche le relative configurazioni, che in genere vengono salvate dentro la cartella home tra cui anche il tema che si utilizza (es ~/.config/ oppure ~/.gconf o altro) quindi dovete portarvi anche queste cose! ovviamente con le indirizzazioni di tipo assoluto quindi ~/.themes/nometema che in maniera assoluta sarà una cosa del tipo /home/user/.themes/nometema e dovrete metterla all’interno della cartella config/livechroot_local-includes e quindi verrà fuori una cosa del tipo config/livechroot_local-includes/home/user/.themes/nometema





Installare la distro con uno script

3 04 2008

Visto che l’abbiamo realizzata la nostra distro… una volta fatta possiamo anche eventualmente installarla! Per farlo basterà avviare la distro personalizzata sl PC in questione, dopodiché con un partizionatore (leggasi gparted, cfdisk o similari) crearsi almeno 2 partizioni una di swap (di almeno 1,5 volte la dimensione della ram) e una su cui andremo ad installare il nostro bel sistema. E se avevamo preinstallato sul sistema live: grub (che non significa che fosse il bootloader del cd ma solo che fosse presente tra i pacchetti che abbiamo passato alla lista d’installazione) potremo facilmente utilizzare uno script come questo:

maiolinuxinstaller.sh
#!/bin/sh
# maiuzinstaller - installa una distro maiolinux su hd
# Copyright (C) 2007 Francesco Maioli
#
# maiuzinstaller comes with ABSOLUTELY NO WARRANTY;
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
# On Debian systems, the complete text of the GNU General Public License
# can be found in /usr/share/common-licenses/GPL-2 file.
#
if [ $# -eq 3 ]
then
PARTIZIONE_SISTEMA=$1
DISCO_AVVIO=$2
NOME_DISTRO=$3
else
echo -e "Uso: `basename $0` partizione_dove_installare disco_di_avvio nome_distro\nes. `basename $0` /dev/hda2 /dev/hda maiolinux\n\nRicorda che questo script funziona solo con partizioni tipo ext3" 1>&2
exit 1
fi
#
echo -e "Copia dei file del sistema\nsarà necessario qualche minuto...\n"
#
touch tmp_file_1
touch tmp_file_2
TMP_FILE_1=tmp_file_1
TMP_FILE_2=tmp_file_2
#
mkdir -p /mnt/disk
mount -t ext3 $PARTIZIONE_SISTEMA /mnt/disk
#
mkdir -p /mnt/squashfs
mount -t squashfs -o loop /live/image/live/filesystem.squashfs /mnt/squashfs
#
cp -a /mnt/squashfs/* /mnt/disk
#
umount /mnt/squashfs
rmdir /mnt/squashfs
#
cp -a /live/cow/etc/* /mnt/disk/etc
#
echo -e "Installazione del sistema di avvio\n"
#
grub-install --root-directory=/mnt/disk $DISCO_AVVIO --no-floppy
#
LIVE_GRUB=/live/image/boot/grub/menu.lst
HD_GRUB="/mnt/disk/boot/grub"
#
echo "timeout 3" > $TMP_FILE_1
echo "default 0" >> $TMP_FILE_1
#
echo "title $NOME_DISTRO" >> $TMP_FILE_1
echo -n "kernel /boot/" >> $TMP_FILE_1
#
cat $LIVE_GRUB | grep "vmlinuz-" > $TMP_FILE_2
while read LINE1
do
echo -n `echo $LINE1 | cut -d ' ' -f2,2 | cut -d '/' -f3,3` >> $TMP_FILE_1
break
done > $TMP_FILE_1
echo " locale=it_IT.UTF-8 keyb=it vga=771" >> $TMP_FILE_1
#
echo -n "initrd /boot/" >> $TMP_FILE_1
#
cat $LIVE_GRUB | grep "initrd.img-" > $TMP_FILE_2
while read LINE1
do
echo -n $LINE1 | cut -d ' ' -f2,2 | cut -d '/' -f3,3 >> $TMP_FILE_1
break
done < $TMP_FILE_2
#
mkdir -p $HD_GRUB
cp $TMP_FILE_1 $HD_GRUB"/menu.lst"
#
rm -f $TMP_FILE_1
rm -f $TMP_FILE_2
#
umount /mnt/disk
#
clear
#
echo -e "\n\n\n\n\nInstallazione del sistema completata\nora potete riavviare il sistema"

Che è un semplice script che ho riadattato alle mie esigenze e che in pratica copia il sistema live sulla partizione che gli passate

Uso: maiolinuxinstaller partizione_dove_installare disco_di_avvio nome_distro
es. maiolinuxinstaller /dev/hda2 /dev/hda maiolinux

Ricorda che questo script funziona solo con partizioni tipo ext3

(e forse anche in partizione ext2 o altre ma non ho provato)

Magari mettete un collegamento sul desktop live così da facilitare l’installazione!
In ogni caso per includere lo script nel sistema live io l’ho posizionato in:
config/chroot_local-includes/usr/local/bin/

Saluti MaiuZ





Personalizzazione delle configurazioni dei programmi e non solo della distro live

8 01 2008

Per personalizzarsi le configurazioni e non solo:
avviate la vostra distro creata come da precedente articolo (ad esempio con qemu --cdrom binary.iso)
Personalizzarvi quello che vi pare (tema delle icone, gdm, tema del desktop, pagina iniziale di iceweasel, temi di icewease / icedove, yab ecc)
Salvate il tutto su chiavetta (es. /home/user/.mozilla
/etc/bash.bashrc
ecc…) ricordandovi di mantenere permessi e path
Copiate quello che avete salvato dentro config/chroot_local-includes dove state creando la vostra distro continuando a mantenere permessi e path
es. se si è creato uno script salvato come /usr/local/bin/maiuzinstaller sulla live
sulla cartella del live helper lo salveremo in config/chroot_local-includes/usr/local/bin/maiuzinstaller ed eventualmente cambieremo i permessi
ecc…

quindi
lh_clean --binary
lh_build

ed il gioco e fatto poi spiegherò come personalizzare grub e se riesco metto su “il sorgente” da cui eventualmente prendere meglio spunto





La scelta dei pacchetti

8 01 2008

Un’attività importante è stata quella della scelta dei pacchetti per 2 semplici motivi

  1. L’utente finale che avrebbe dovuto utilizzare il S.O.
  2. Il limitato spazio di un CD benché il filesystem live venga abbondantemente compresso

L’utente usa saltuariamente windows a lavoro e possiede un PC un po’ datato su cui gira WinME, ma comunque abbondantemente sufficiente per fare tutto ciò che serve ad un “normale” utente che a mio modesto parere è possibile riassumere così: Leggi il seguito di questo post »





Personalizzazione di una Debian Live

21 12 2007

Come promesso nel precedente articolo, cercherò ora di descrivere come ho fatto per personalizzare la nuova distribuzione.

Una volta lanciato lh_config, si è creata una sottocartella che si chiama “config/” e dentro ci troveremo

  • binary (si occupa della personalizzazione del sistema live vero e proprio)
  • bootstrap (tutto quello che riguarda il bootstrap, diciamo il sistema di avvio)
  • chroot (imposta il comportamento del chroot, in pratica una sorta di postproduzione manuale alle varie automazioni svolte dal live-helper)
  • common (vari aspetti comuni a tutto il processo di live-helper)
  • source (si prende cura di eventuali sorgenti, non mi ha interessato per questa volta)
  • più svariate cartelle ognuna con una loro funzione specifica

ora… questi file sono personalizzabili manualmente con un qualsiasi editor di testi oppure da riga di comando attraverso parametri specifici (es.: lh_config --debian-installer disabled disabiliterà l’installatore debian andando a cambiare LH_DEBIAN_INSTALLER= nel file binary) Leggi il seguito di questo post »





BarbalinuX l’inizio

22 11 2007

Dopo la nota vicenda MaiolinuX, sono al secondo tentativo di farmi una Distro personalizzata live. Questa volta il metodo cade sulla personalizzazione di una Debian Live. Visto che sto elaborando il tutto mentre sto scrivendo, faccio un piccolo riassunto di quello che ho fatto fino ad ora:

  1. Preparare il PC sul quale crearmi la distro
    • In ufficio purtroppo per motivi di lavoro siamo costretti ad usare WindowsXP 64bit, ed avevo iniziato ad usare virtualbox (visto che aveva rilasciato anche la versione x64) per virtualizzarmi una debian, salvo poi scoprire una volta preparato il tutto che odiava la mia chiavetta USB ed immancabilmente mi dava una bella schermata blu.
    • Passare quindi al fidato vmware, tanto è diventato opensource pure lui.
    • Installare una debian minima con solo xfce e qemu
  2. Scaricare live-helper con aptitude, con relativi pacchetti consigliati e raccomandati quindi nella directory dove volevo farmi la mia bella newdistro digitare:
    $ lh_config
    $ sudo lh_build
    $ qemu -cdrom binary.iso
  3. così mi si è avviata la nuova distro allo stadio embrionale
  4. Ora la sto personalizzando la prossima volta vi spiego come

Ciao MaiuZ





Morphix questo (semi)sconosciuto

20 08 2007

Bhe dopo un po’ che non ci si sentiva eccomi di nuovo qui a raccontarvi la storiella di MaiolinuX.
Inizialmente volevo usare direttamente Debian live project, ma l’ho trovato ancora un po’ immaturo e macchinoso per quello che volevo fare, quindi sono tornato ad utilizzare Morphix questa geniale distribuzione, che altro non serve se non a far da base facilmente personalizzabile ad altre distribuzioni.

La peculiarità di Morphix è la sua struttura modulare, in pratica suddividere la distribuzione (generalmente monolitica sui liveCD, leggasi Knoppix) in tanti moduli a seconda delle esigenze. Detto ciò in realtà io non ho sfruttato più di tanto questa sua peculiarità, ma la facilità con la quale è stato possibile realizzare il liveCD attraverso i mezzi che Morphix mi ha messo a disposizione. In particolare:

  • isomaker, con il quale ho realizzato il modulo di base, in pratica il motore del liveCD. Per fare ciò ho adattato un modello xml che ho reperito sul sito di morphix stesso e l’ho adattato alle mie esigenze (in questo caso basarmi sulla testing di debian per una maggior stabilità del sistema live);
  • mmaker, con il quale ho realizzato il modulo principale della distribuzione, sempre attraverso un modello xml dentro al quale sono andato a “scegliere” gli applicativi da installare sul liveCD;
  • morphix-chroot, che in realtà è uno script che servirebbe per modificare un modulo già compresso, ma a me è servito per realizzare un piccolo script con il quale personalizzare più semplicemente la copia del modulo principale non compresso che avevo realizzato con mmaker; module-builder, con il quale ho compresso il modulo principale;
  • make-mini, con il quale ho creato il mini-modulo della cartella home, nella quale sono salvate tutte le personalizzazioni grafiche e non del liveCD che riguardano l’utente finale;
  • isomorph, con il quale ho assemblato il tutto in un unico file iso;
  • morphix-rebrand, per personalizzare l’aspetto e le scritte del sistema d’avvio di MaiolinuX

La prossima volta vi dirò quali e come ho scelto gli applicativi di MaiolinuX.





Perché Debian

4 07 2007

Ho scelto di basare la mia distro su Debian semplicemente perché per me è l’essenza di linux, completamente libero, come l’acqua. Magari non sarà semplicissimo da installare/personalizzare/configurare (anche se io non trovo difficoltà superiori a quelle che si potrebbero trovare con altri S.O.), ma sopratutto è “supercompleto”. Ha tutto! migliaia di programmi che si possono tranquillamente installare, ormai, veramente semplicemente.

La comunità che sta dietro a Debian è veramente fantastica, basta cercare un attimo su internet per trovare qualsiasi tipo di info necessaria.





Inizia l’avventura

4 07 2007

E così inizia anche il MIO blog (o meglio diario se volete), lo hanno ormai tutti, ne avevo iniziato uno anch’io, ma si sa com’è non avendo nulla da scrivere è bello che morto da un pezzo.
Stavolta sono più speranzoso in quanto HO VERAMENTE qualcosa da raccontare, la nascita e la crescita di MaiolinuX! Poi si vedrà.

In realtà l’avventura era iniziata qualche mese fa, complice la noia mortale la sera in televisione, ho installato su un vecchio portatile “Debian”, cosa che mi ha impegnato non poco visto che come al solito io parto dalla parte più difficile della scalata, provando ad installare una unstable via net, tenete presente che ero a digiuno da linux da almeno un paio d’anni e comunque ero e sono tutt’ora un “principiante” autodidatta.
Chiaramente non partiva una cippa (quindi se volete provare una cosa del genere vi consiglio vivamente un netinst da testing ed eventualmente upgrade successivo).
Sono poi passato a “Dreamlinux“, molto carino graficamente, ma al primo aggiornamento si è spallato un po’ tutto, al che mi sono imposto di trasformare graficamente debian simil dreamlinux.

Come al solito ne ho parlato con amici e subito: “ma se è tanto carino sto linux perché non me lo fai vedere”, oppure… “è solo una perdita di tempo… nessuno ti da niente per niente”.

Ho pensato se Dreamlinux partiva live e su qualsiasi PC perché non farmi anch’io una distro personale con cui stupire gli amici? Ma soprattutto volevo fare un regalo speciale a una persona speciale…
e così è iniziata l’avventura, che vi racconterò dilazionata nel tempo perché la distro in realtà è quasi pronta, mentre il blog è appena iniziato ;-P