PoliticaDevel

Iniciando o Gnuden 0.3 do zero

(caminhos relacionados à raiz do buildroot)

Características Ideais

Sistema:

  • Opções de kernels 2.2, 2.4 e 2.6 e os seguintes patches opcionalmente: audio pelo pc speaker, Compressed Caching, BadRam (bédrão), -tiny patchset.
  • rodar mklibs no sistema?
  • Compilar o Mozilla Minimo 016: fórum, .mozconfig do firefox 1.5.0.7 com gtk1 compilado no deli
  • Xorg - compilar o xorg 7.2 do ucslack 11.0 com profile de tinyx?
  • Personalizar os scripts de boot dizendo que o Gnudenberg está sendo carregado!
  • Alterar os flags de compilação de todos os programas para -Os e -march=i386, ou seja, ir fazendo os SlackBuilds do uCslack.
  • Escolher um logo, uma demo ou um mod para tocar no boot
  • Fazer um CD de instalação com templates de pacotes pré feitos. Oque usar?
    • o mesmo instalador, Ipsis Litteris com o do Slackware 11,
    • usar o instalador do sistemao,
    • usar o instalador do delilinux
    • usar um sistema a-linux!
  • Criar um "desktop" orientado a shell, vamos usar o Flash mesmo?
  • Templates para o simplepkg
  • Colocar o memtest no menu de boot
  • Todos os programas necessários para um desktop (incluindo software para streaming de audio) e pequeno servidor em ambiente de console, ambiente com shell orientada por menus (em ncurses), ambiente gráfico fbui (opcional) e X Windows (com config de tinyX).
  • Instalável em hd (a princípio não-live)
  • Esquema de pacotes baseado no slackware.
  • Aplicativos do projeto Assembly Linux para o sistema de boot e aplicativos básicos - TODO
  • Aplicativos que rodam com SVGALib - TODO
  • Diversos jogos para emuladores leves como o MAME - TODO
  • Aplicativos compilados para ocupar pouco espaço em disco e memória (otimizações do gcc).
  • Suporte a AX.25 (rede por rádio amador e placa de som) - TODO
  • Configuradores em ncurses para email, chat, etc - TODO
  • Suporte a volumes criptografados - TODO
  • Propósisto: rodar em computadores com pouca memória, baixa capacidade de processamento e armazenamento

Política de desenvolvimento

  • O que foi discutido até agora sobre o assunto na lista de discussão:

http://listas.sarava.org/wws/arc/gnuden/

  • Repositório para o Gnuden e para os .SlackBuilds (ucslack):

Via https:

# svn checkout https://svn.sarava.org/gnuden/
# svn checkout https://svn.sarava.org/ucslack/

Versões antigas - Descontinuado

Instalar o toolchain usando:

# svn checkout https://svn.sarava.org/gnuden/
# installpkg -root /gnuden_root gnuden/gnuden-$GNUDEN_VERSION/*.tgz

Instalação

Instalando o Gnuden

1 - Baixando os pacotes

Baixe os pacotes do Gnuden via subversion:

  svn checkout https://svn.sarava.org/gnuden/

também disponível via https://svn.sarava.org/viewvc/gnuden/

2 - Instalação

De dentro do teu sistema slackware (caso não seja um slackware, instale o pkgtools) ou a partir do CD de instalação do slackware (pode ser o CD do 10.2), monte a particão na qual se deseja instalar o gnuden, em /mnt/gnuden, por exemplo, e faça o seguinte (levando em consideração que os pacotes do gnuden estejam em /mnt/packages/gnuden-current/gnuden/):

  installpkg -root /mnt/gnuden /mnt/packages/gnuden-current/gnuden/*/*.tgz

Depois dê um chroot para dentro do diretório que é o raiz do gnuden:

  chroot /mnt/gnuden

Edite o /etc/fstab da instalação recém terminada para apontar o diretório raiz ( / ) para a partição correta. Exemplo de fstab na qual o gnuden foi instalado em /dev/hdb3:

  /dev/hdb3        /                ext3        defaults         0   0
  shmfs            /dev/shm         tmpfs       defaults         0   0
  devpts           /dev/pts         devpts      gid=5,mode=620   0   0
  proc             /proc            proc        defaults         0   0

Se você pretende rodar o Gnuden em um sistema com pouca memória ( <= 8Mb ) é recomendável que troque a shell do teu usuário do /bin/bash para o /bin/ash.

O Gnuden vem com o gerenciador de boot lilo e o arquivo de configuração fica em /etc/lilo.conf . Edite-o e depois rode o comando:

  lilo

Reboote e você vai estar rodando o Gnudenberg!

Como instalar o uWoody

Baixe o iso do uWoody em http://gnuden.sarava.org/uwoody

1. A partir da sua distribuição preferida, crie uma partição para onde

   o uWoody será instalado. No meu caso, usei o hdb1

	mkfs.ext3 /dev/hdb1

2. Copie o a partição raiz presente na distribuição uWoody para essa

   partição:

	mount /cdrom # local da instalacao do uwoody
	cd /tmp && cp /cdrom/dists/root_fs.i386.bz2 .
	bunzip2 root_fs.i386.bz2
	mount -o loop=/dev/loop0 root_fs.i386.bz2 /mnt/hd
	mkdir /mnt/uwoody && mount /dev/hdb1 /mnt/uwoody
	cd /mnt/uwoody && cp -R /mnt/hd/* .    # copia o sistema basico
	umount /mnt/hd ; rm /tmp/root_fs.i386.bz2

Ao invés de todo esse procedimento, você pode usar o resizetofs para criar seu sistema basico.

3. Opcionalmente, copie seu kernel, módulos e arrume a estrutura do /dev:

	cd /mnt/uwoody/boot    # ponto de montagem da particao do uwoody
	cp /boot/vmlinuz .     # seu kernel
	cp /boot/System.map .
	cp /boot/config .

Talvez você também queira substituir o /dev padrão pelo do seu sistema. Recomendo que você só faça isso se der algum erro no uWoody relacionado a dispositivos. Para tanto,

	cd /mnt/uwoody/dev ; rm -rf *
	cp -R /dev/* .

Agora copie seus módulos:

	cd /mnt/uwoody/lib/modules
	cp -R /lib/modules/$(uname -r) .

4. Instale o LILO ou GRUB e arrume o fstab:

Adicione no seu /etc/lilo.conf

	# uWoody Linux bootable partition config begins
	image = /boot/vmlinuz
	root = /dev/hdb1
	label = uWoody
	read-only
	# uWoody bootable partition config ends

e rode o lilo. Se você usar o GRUB, coloque no seu /boot/grub/menu.lst

	# uWoody Linux bootable partition config begins
	title uWoody
        kernel (hd0,4)/boot/vmlinuz-2.4.27-uwoody ro root=/dev/hdb1
	# uWoody bootable partition config ends

Na sequência,

	cp /etc/fstab /mnt/uwoody/etc/
	vi /mnt/uwoody/etc/

e efetue as modificações de tal forma que /dev/hdb1 seja montada como a raiz do seu sistema.

5. Reinicie o computador e carregue o uWoody. O login root estará sem senha.

6. Instale os outros pacotes

	mount /cdrom
	cd /cdrom/dists/uwoody/main/binary-i386/
	dpkg -i --force-all *deb

Essa abordagem é meio bruta e precisa de no minimo 1GB livre na sua partição. Alternativamente você pode usar o apt e instalar apenas o necessário:

	mount /cdrom
	echo "deb file:/cdrom uwoody main" >> /etc/apt/sources.list
	apt-get update
	apt-get dist-upgrade -f

7. Parabéns! Agora você está rodando um dos sistemas linux mais rápidos.

Se você for usar essa instalação para multiplas máquinas, copie esse sistema diretamente para outros discos, o que economizará muito do seu tempo. Para máquinas velhas, use um kernel simples e apenas com os módulos necessarios.