viernes, 1 de abril de 2011

Script para personalizar Ubuntu

Esta es la parte sucia del proyecto, ya que no se ve. Pero sin ella nuestra aplicación sería inútil.


#!/bin/bash
#ubuntu maverick
#ejecutar paquetes.downlod en el directorio
#ejecutar poniendo . creaUbuntu 
#repositorios: etc/apt/sources.list
echo instalar programas necesarios squash y mkiso
sudo apt-get -y install mkisofs squashfs-tools
#http://www.ubuntu.com/desktop/get-ubuntu/download
echo descargar iso ubuntu
#sudo wget -O ubuntu.iso 'http://ftp.dat.etsit.upm.es/ubuntu-releases/maverick/ubuntu-10.10-desktop-i386.iso'
echo Montar la iso en /mnt
sudo mount -o loop ./ubuntu.iso /mnt
echo Copiar los archivos a la carpeta /mylive
sudo cp -dpR /mnt ./mylive/
echo Desmontar la iso
sudo umount /mnt
echo Montar el fichero filesystem.squashfs
sudo unsquashfs ./mylive/casper/filesystem.squashfs
sudo cp ./images/blankUbuntu.pcx ./mylive/isolinux/blank.pcx
#----------------------------------------------------pr1
echo Empezar a realizar las modificaciones
sudo cp ./scripts/paquetes.download.sh ./squashfs-root/paquetes #copio para utilizar posteriormente
sudo cp ./images/ubuntu-splash.png ./squashfs-root
sudo cp ./images/warty-final-ubuntu.png ./squashfs-root
echo ejecuto \chroot
sudo cp /etc/resolv.conf ./squashfs-root/etc #habilito configuracion de red
sudo cp /etc/hosts ./squashfs-root/etc
sudo cp ./repositorios/Ubuntu ./squashfs-root/etc/apt/sources.list 
echo instalar paquetes
cd ./squashfs-root
#cambio fondo de escrritorio
sudo chroot ./ cp ./warty-final-ubuntu.png /usr/share/backgrounds/
sudo chroot ./ echo "proc /proc proc defaults 0 0">>/etc/fstab
sudo mount --bind /dev /dev
sudo chroot ./ mount -t proc none /proc
sudo chroot ./ mount -t sysfs none /sys
sudo chroot ./ mount -t devpts none /dev/pts
sudo chroot ./ apt-get -y install build-essential gdb
sudo chroot ./ add-apt-repository ppa:sun-java-community-team/sun-java6
sudo chroot ./ add-apt-repository ppa:n-muench/programs-ppa
sudo chroot ./ apt-get -y update #actualizo repositorios
sudo chroot ./ sh ./paquetes #instala paquetes
#sudo chroot ./ apt-get -y upgrade
sudo chroot ./ update-alternatives --config java
sudo chroot ./ apt-get -y clean
sudo chroot ./ umount /proc /sys /dev/pts 
sudo umount /dev
cd ..
echo Crear el squashfs
sudo rm -f ./mylive/casper/filesystem.squashfs
sudo mksquashfs ./squashfs-root ./mylive/casper/filesystem.squashfs
#------------------------------------------------------------------pr2
echo Hacer la iso:
sudo mkisofs -J -R -o cdlive.iso -no-emul-boot -boot-info-table -b isolinux/isolinux.bin ./mylive/
echo Y ya esta listo...
sudo rm -Rf squashfs-root
sudo rm -Rf mylive
sudo rm filesystem.squashfs
sudo rm ./scripts/paquetes.download.sh
sudo rm ./ubuntu.iso

Como veis la iso final se llama cdlive. El script paqutes.download.sh contiene comandos para instalar los paquetes y esos paquetes son la selección de otros, en otro script.

No hay comentarios: