Customização ao Extremo Daniel de Melo -–d4n1h4ck3r@gmail.com
Agenda <ul><li>Introdução
Tecnologias </li><ul><li>Git
Portage
Metro
OpenVZ
Xz </li></ul><li>Referências
Conclusão </li></ul>
Introdução <ul><li>Criado em 2008 por Daniel Robbins
Fun/too, um jogo de palavras
Fazer progresso é divertido (Inovação)
Direcionado ao núcleo do sistema
“ Há muito o que corrigir no 'baixo' nível
do sistema”
Não usa pacotes binários
Espírito hacker de desenvolvimento
Ciclo de desenvolvimento continuo
Foco, foco, foco... </li></ul>
Upcoming SlideShare
Loading in …5
×

Funtoo escla

544 views
459 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
544
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
3
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Funtoo escla

  1. 1. Customização ao Extremo Daniel de Melo -–d4n1h4ck3r@gmail.com
  2. 2. Agenda <ul><li>Introdução
  3. 3. Tecnologias </li><ul><li>Git
  4. 4. Portage
  5. 5. Metro
  6. 6. OpenVZ
  7. 7. Xz </li></ul><li>Referências
  8. 8. Conclusão </li></ul>
  9. 9. Introdução <ul><li>Criado em 2008 por Daniel Robbins
  10. 10. Fun/too, um jogo de palavras
  11. 11. Fazer progresso é divertido (Inovação)
  12. 12. Direcionado ao núcleo do sistema
  13. 13. “ Há muito o que corrigir no 'baixo' nível
  14. 14. do sistema”
  15. 15. Não usa pacotes binários
  16. 16. Espírito hacker de desenvolvimento
  17. 17. Ciclo de desenvolvimento continuo
  18. 18. Foco, foco, foco... </li></ul>
  19. 19. Introdução <ul><li>Funtoo X Gentoo </li></ul>
  20. 20. Introdução <ul><ul><li>Instalação em 13 passos </li><ul><li>Boot de qualquer LiveCD
  21. 21. Particionamento do disco
  22. 22. Criar e montar os filesystems
  23. 23. Instalar o Funtoo stage
  24. 24. Instalar a árvore do Portage
  25. 25. Chroot para o novo sistema
  26. 26. Atualizar a árvore do Portage
  27. 27. Configurar seu sistema
  28. 28. Instalar um kernel
  29. 29. Configurar sua Rede
  30. 30. Instalar um gerenciador de boot
  31. 31. Ajustes finais
  32. 32. Reboot </li></ul></ul></ul>
  33. 33. Tecnologia Git <ul><ul><li>Sistema de Controle de Versão
  34. 34. Distribuído (DVCS)
  35. 35. Criado por Linus Torvalds
  36. 36. sob a licença GPL </li></ul></ul>
  37. 37. Tecnologia Git <ul><ul><li>$ git config --global user.name
  38. 38. &quot;Daniel de Melo&quot;
  39. 39. $ git config --global user.email
  40. 40. [email_address]
  41. 41. $ mkdir hacker
  42. 42. $ cd hacker
  43. 43. $ git init
  44. 44. $ touch hacker.py
  45. 45. $ git add hacker.py
  46. 46. $ git commit –-m &quot;hacker-1.0”
  47. 47. $ git diff
  48. 48. $ git log </li></ul></ul>
  49. 49. Tecnologia Git <ul><ul><li>$ git branch experimental
  50. 50. $ git branch
  51. 51. $ git checkout experimental
  52. 52. <editar hacker.py>
  53. 53. $ git commit -a -m &quot;hacker-experimental&quot;
  54. 54. $ git checkout master
  55. 55. <editar hacker.py>
  56. 56. $ git commit -a
  57. 57. $ git merge experimental
  58. 58. $ git diff </li></ul></ul>
  59. 59. Tecnologia Portage <ul><ul><li>Gerenciador de pacotes oficiais
  60. 60. do Funtoo Gnu/Linux
  61. 61. Desenvolvido em python
  62. 62. Resolve depêndencias semelhante ao
  63. 63. Apt do Debian
  64. 64. Similar ao ports do FreeBSD
  65. 65. Ebuild
  66. 66. São shell scripts com instrunções
  67. 67. de como obter, configurar,
  68. 68. compilar e instalar os aplicativos
  69. 69. Usa o gcc para a compilação
  70. 70. +25.000 ebuilds disponíveis </li></ul></ul>
  71. 71. Tecnologia Portage <ul><ul><li>Emerge
  72. 72. Coração do Portage
  73. 73. Customização atravéz de parâmetros
  74. 74. Calcula e gerência dependências
  75. 75. Executa ebuilds em um ambiente
  76. 76. sandbox (ambiente seguro de compilação)
  77. 77. Mantém a estrutura da árvore local
  78. 78. do Portage (/usr/portage/) e uma base
  79. 79. de dados de pacotes instalados
  80. 80. (/var/lib/portage/)
  81. 81. Uso de CFLAGS (variáveis do Makefile)
  82. 82. Uso de flags USE customizadas
  83. 83. Mascaramento de pacotes (experimental) </li></ul></ul>
  84. 84. Tecnologia Portage <ul><ul><li># emerge –--sync
  85. 85. # emerge package
  86. 86. # emerge --ask --verbose (-av) package
  87. 87. # emerge --search (-s) package
  88. 88. # emerge --searchdesc (-S) package
  89. 89. # emerge --unmerge (-D) package
  90. 90. # emerge --unmerge --deep (-DC) package
  91. 91. # emerge --pretend (-p) package
  92. 92. # emerge --update (-u) package
  93. 93. # emerge --depclean (-c) package
  94. 94. # emerge -DaNuv world
  95. 95. GUI: Portato/Porthole/Himerge </li></ul></ul>
  96. 96. Tecnologia Metro <ul><ul><li>Sistema de compilação automatizado
  97. 97. Stage3 > stage semente > stage1 >
  98. 98. stage2 > stage3 ...
  99. 99. Local build / Remote build
  100. 100. # emerge -aC dev-util/metro
  101. 101. # install -d /root/git
  102. 102. # cd /root/git
  103. 103. # git clone https://github.com/
  104. 104. funtoo/metro.git
  105. 105. # ln -s /root/git/metro/metro /usr/
  106. 106. bin/metro
  107. 107. # ln -s /root/git/metro /usr/lib/metro </li></ul></ul>
  108. 108. Tecnologia Metro <ul><ul><li># install -d /home/dani/dani/projects/
  109. 109. funtoo/funtoo-current/x86-32bit/core2_32
  110. 110. # cd /home/dani/dani/projects/funtoo/
  111. 111. funtoo-current/x86-32bit/core2_32
  112. 112. # install -d 2011-04-08
  113. 113. # cd 2011-04-08
  114. 114. # wget -c http://ftp.osuosl.org/pub/
  115. 115. funtoo/funtoo-current/x86-32bit/core2_32/
  116. 116. 2011-04-08/stage3-core2_32-funtoo-current
  117. 117. -2011-04-08.tar.xz
  118. 118. # cd ..
  119. 119. # install -d .control/version
  120. 120. # echo &quot;2011-04-08&quot; > .control/version/
  121. 121. stage3 </li></ul></ul>
  122. 122. Tecnologia Metro <ul><ul><li># install -d .control/strategy
  123. 123. # echo &quot;local&quot; > .control/strategy/build
  124. 124. # echo &quot;stage3&quot; > .control/strategy/seed
  125. 125. # /usr/lib/metro/scripts/ezbuild.sh
  126. 126. funtoo-current core2_32
  127. 127. # echo &quot;local&quot; > /home/dani/dani/
  128. 128. projects/funtoo/funtoo-current/x86-32bit/
  129. 129. core2_32/.control/strategy/build </li></ul></ul>
  130. 130. Tecnologia OpenVz <ul><ul><li>Servidor Privado Virtual (VPS) </li></ul></ul>
  131. 131. Tecnologia Xz <ul><ul><li>Xz X outros... </li></ul></ul>
  132. 132. Referências <ul><ul><li>http://www.kernel.org/pub/software/scm/
  133. 133. git/docs/gittutorial.html
  134. 134. http://docs.funtoo.org/wiki/Funtoo_Linux
  135. 135. http://docs.funtoo.org/wiki/Portage_%28
  136. 136. Funtoo%29
  137. 137. http://docs.funtoo.org/wiki/Metro_Quick
  138. 138. _Start_Tutorial </li></ul></ul>
  139. 139. Conclusão http://forums.funtoo.org/ http://groups.google.com/group/funtoo-dev IRC #funtoo Www.d4n1h4ck3r.blogspot.com [email_address]

×