sexta-feira, 30 de dezembro de 2005

DreamLinux - Correções de bugs

Acompanhem as seguintes correções do DreamXFCE, feitas por mim:

- Menus duplicados
- Montagem de dispositivos pelo usuário
- Criação do fstab atualizado
- Criação das pastas em /mnt de acordo com o fstab
- Substituição do Morphix por DreamLinux no Grub
- Bootsplash após instalado no HD
- Personalização e tradução do instalador Morphix a partir de arquivo PO

1 - Bootsplash

- Peguei o miniroot.gz, do CD ROM, montei ele e peguei todas as cofnigurações do bootsplash
- Criei um pacote que instalava o tema do Dream extraído do Miniroot
- Instalando o pacote bootsplash e configurando-o, apliquei o mesmo tema do Dream que roda pelo CD
- Com o passo acima, foi gerado o initrd.splash. Alterei seu nome para initrd, melhorando a compatibilidade

- Mas, como o initrd ser adicionado ao menu.lst, do Grub, tive que adicionar a seguinte entrada no postinst, juntamente com a substituição da expressão Morphix GNU/Linux para DreamLinux (se o menu.lst existir):

if [ -f /boot/grub/menu.lst ]; then

#Adiciona suporte ao bootsplash
sed -e '11i\' -e 'initrd = /boot/initrd' /boot/grub/menu.lst > /boot/grub/menu.lst2
mv -f /boot/grub/menu.lst2 /boot/grub/menu.lst

mv /boot/grub/menu.lst /tmp/updategrub
sed -e 's/\Morphix\ \GNU\/\Linux/DreamLinux/g' /tmp/updategrub > /tmp/updategrub1
cp -f /tmp/updategrub1 /boot/grub/menu.lst

fi


Que adiciona na linha exata do menu.lst a entrada no initrd.

2 - FSTAB

- Alterei o script do Kalango que cria o FSTAB com as partições do usuário, o /usr/sbin/rebuildfstab, e adicionei ao postinst:

clear
rebuildfstab 2>/dev/null
clear


- Ele adiciona as entradas no fstab e cria as pastas. Mas, para as entradas do fstab adicionadas pelo instalador do DreamLinux, a pasta não é criada. Para isso:

grep "^/dev/[hs]d.*/mnt/" /etc/fstab |
while read dev mnt x
do

mkdir /$mnt 2>/dev/null

done


Para complementar:

#Diretórios
mkdir /mnt/hda1 2>/dev/null
mkdir /mnt/sda1 2>/dev/null
mkdir /media 2>/dev/null
mkdir /media/ipod 2>/dev/null
mkdir /mnt/cdrom 2>/dev/null
mkdir /mnt/cdrom1 2>/dev/null
mkdir /mnt/auto 2>/dev/null
mkdir /mnt/auto/cdrom 2>/dev/null
mkdir /mnt/auto/cdrom1 2>/dev/null
mkdir /mnt/auto/floppy 2>/dev/null

# Permissoes
chmod 777 /floppy 2>/dev/null
chmod 777 /mnt/auto/* 2>/dev/null
chmod 777 /mnt/* 2>/dev/null
chmod 666 /dev/audio* 2>/dev/null
chmod 666 /dev/dsp* 2>/dev/null
chmod 666 /dev/mixer* 2>/dev/null


Com tudo isso, a questão do usuário comum montar dispositivos fica resolvida também.

3 - Instalação no HD

Para sumir com a opção "Instalar DreamLinux no HD", depois de instalado no mesmo, adicionei a entrada:

# Remove a opção de Instalar no HD após instalado
rm -f /usr/share/applications/Instalar* 2>/dev/null


Que remove o link do menu.

4 - Sumir com menus duplicados

Para sumir com os menus duplicados (KDE e Gnome), adicionei uma entrada que "caduca" os links para o KDE:

# Some com os menus duplicados
ln -sf /tmp /usr/share/applnk/Internet
chown root.root /usr/share/applnk/Internet


Ou seja, os direciona para /tmp.

TUDO ISSO ACIMA JOGADO NO PACOTE DEB DREAMDATA

5 - Outras soluções:

- Personalização e tradução do Morphix instaler e Partition Morpher, com logos do Dream ao invés d o Morphix e personalização do texto;

6 - Grub


Para resolver a questão do MCP iniciar em inglês, a tag lang=us, do /boot/grub/menu.lst, do CD-ROM, foi alterada para lang=pt_BR

PACOTE DREAM-CUSTOM-MORPHIX

##############################

TUDO ISSO NÃO SÃO CORREÇÕES APENAS PARA O DREAMXFCE, E SIM PARA BASE do DREAMLINUX.

Para tanto, deve-se instalar os seguitnes pacotes:

- dreamdata_1.1_i386.deb
- dream-custom-morphix_1.7_i386.deb
- dreamdata-locale-br_1.0_i386.deb (ATENÇÃO!! SOMENTE PARA A BASE!)

E alterar tag lang=us, do /boot/grub/menu.lst, do CD-ROM, para lang=pt_BR

Nenhum comentário: