diff options
author | rhatto <rhatto@04377dda-e619-0410-9926-eae83683ac58> | 2007-05-23 18:54:31 +0000 |
---|---|---|
committer | rhatto <rhatto@04377dda-e619-0410-9926-eae83683ac58> | 2007-05-23 18:54:31 +0000 |
commit | eee366de3ddeefd044b711d6f848f9b1ae6a8033 (patch) | |
tree | 7c0b250c7d54e250739396f7ebf1f1e5cade75d0 | |
parent | 10addeb7c5555a1478a4da84b922904e883404c2 (diff) | |
download | simplepkg-eee366de3ddeefd044b711d6f848f9b1ae6a8033.tar.gz simplepkg-eee366de3ddeefd044b711d6f848f9b1ae6a8033.tar.bz2 |
updated simplepkg.tex
git-svn-id: svn+slack://slack.fluxo.info/var/svn/simplepkg@376 04377dda-e619-0410-9926-eae83683ac58
-rw-r--r-- | trunk/doc/README.pt_BR | 2 | ||||
-rw-r--r-- | trunk/doc/simplepkg.aux | 25 | ||||
-rw-r--r-- | trunk/doc/simplepkg.dvi | bin | 25288 -> 41532 bytes | |||
-rw-r--r-- | trunk/doc/simplepkg.log | 236 | ||||
-rw-r--r-- | trunk/doc/simplepkg.out | 25 | ||||
-rw-r--r-- | trunk/doc/simplepkg.tex | 342 |
6 files changed, 380 insertions, 250 deletions
diff --git a/trunk/doc/README.pt_BR b/trunk/doc/README.pt_BR index 7f0e15c..4f3b928 100644 --- a/trunk/doc/README.pt_BR +++ b/trunk/doc/README.pt_BR @@ -442,6 +442,6 @@ disponibilizado através do repositório subversion: svn checkout svn://slack.sarava.org/simplepkg O wiki de desenvolvimento: http://slack.sarava.org/wiki/Main/SimplePKG e o endereço da lista de discussão -utilizada para discussões sobre simplaret, simplepkg ou mesmo distribuições e pacotes do tipo Slackware é +utilizada para discussões sobre simplepkg ou mesmo distribuições e pacotes do tipo Slackware é http://listas.sarava.org/wws/info/slack. diff --git a/trunk/doc/simplepkg.aux b/trunk/doc/simplepkg.aux index ad47a5f..7dd7823 100644 --- a/trunk/doc/simplepkg.aux +++ b/trunk/doc/simplepkg.aux @@ -20,11 +20,20 @@ \@writefile{toc}{\contentsline {section}{\numberline {1}Descri\c c\~ao}{1}{section.1}} \@writefile{toc}{\contentsline {section}{\numberline {2}Arquitetura}{2}{section.2}} \@writefile{toc}{\contentsline {section}{\numberline {3}Instalando o simplepkg}{2}{section.3}} -\@writefile{toc}{\contentsline {section}{\numberline {4}Configurando o simplepkg}{3}{section.4}} -\@writefile{toc}{\contentsline {section}{\numberline {5}Criando jaulas e replicando instala\c c\~oes}{3}{section.5}} -\@writefile{toc}{\contentsline {section}{\numberline {6}Metapacotes}{4}{section.6}} -\@writefile{toc}{\contentsline {section}{\numberline {7}Upgrade de jaulas}{5}{section.7}} -\@writefile{toc}{\contentsline {section}{\numberline {8}Arquiteturas e vers\~oes diferentes}{5}{section.8}} -\@writefile{toc}{\contentsline {section}{\numberline {9}Aplicativo auxiliar: rebuildpkg}{6}{section.9}} -\@writefile{toc}{\contentsline {section}{\numberline {10}Fonte}{6}{section.10}} -\@writefile{toc}{\contentsline {section}{\numberline {11}P\'agina de desenvolvimento}{6}{section.11}} +\@writefile{toc}{\contentsline {section}{\numberline {4}Usando o simplepkg}{2}{section.4}} +\@writefile{toc}{\contentsline {section}{\numberline {5}Criando templates de instala\c c\~ao}{3}{section.5}} +\@writefile{toc}{\contentsline {section}{\numberline {6}Criando jaulas e replicando instala\c c\~oes}{4}{section.6}} +\@writefile{toc}{\contentsline {section}{\numberline {7}Scripts de p\'os-instala\c c\~ao}{5}{section.7}} +\@writefile{toc}{\contentsline {section}{\numberline {8}Listando o conte\'udo de um template}{5}{section.8}} +\@writefile{toc}{\contentsline {section}{\numberline {9}Removendo arquivos de um template}{5}{section.9}} +\@writefile{toc}{\contentsline {section}{\numberline {10}Apagando um template}{5}{section.10}} +\@writefile{toc}{\contentsline {section}{\numberline {11}Atualizando um template}{6}{section.11}} +\@writefile{toc}{\contentsline {section}{\numberline {12}Restaurando arquivos de configura\c c\~ao numa jaula}{7}{section.12}} +\@writefile{toc}{\contentsline {section}{\numberline {13}Armazenando as configura\c c\~oes no reposit\'orio Subversion}{7}{section.13}} +\@writefile{toc}{\contentsline {section}{\numberline {14}Atualiza\c c\~ao de jaulas}{7}{section.14}} +\@writefile{toc}{\contentsline {section}{\numberline {15}Arquiteturas e vers\~oes diferentes}{8}{section.15}} +\@writefile{toc}{\contentsline {section}{\numberline {16}Criando um pacote de um template}{8}{section.16}} +\@writefile{toc}{\contentsline {section}{\numberline {17}Construindo pacotes}{8}{section.17}} +\@writefile{toc}{\contentsline {section}{\numberline {18}Aplicativos auxiliares}{10}{section.18}} +\@writefile{toc}{\contentsline {section}{\numberline {19}Par\^ametros de configura\c c\~ao}{10}{section.19}} +\@writefile{toc}{\contentsline {section}{\numberline {20}Mais informa\c c\~oes}{11}{section.20}} diff --git a/trunk/doc/simplepkg.dvi b/trunk/doc/simplepkg.dvi Binary files differindex 2779fbe..e713e4b 100644 --- a/trunk/doc/simplepkg.dvi +++ b/trunk/doc/simplepkg.dvi diff --git a/trunk/doc/simplepkg.log b/trunk/doc/simplepkg.log index c6a55ef..8a0f1c4 100644 --- a/trunk/doc/simplepkg.log +++ b/trunk/doc/simplepkg.log @@ -1,13 +1,17 @@ -This is TeX, Version 3.14159 (Web2C 7.4.5) (format=latex 2005.1.14) 10 FEB 2006 12:19 +This is pdfeTeX, Version 3.141592-1.21a-2.2 (Web2C 7.5.4) (format=latex 2006.8.13) 23 MAY 2007 15:51 +entering extended mode **simplepkg.tex (./simplepkg.tex -LaTeX2e <2001/06/01> -Babel <v3.7h> and hyphenation patterns for american, french, german, ngerman, n -ohyphenation, loaded. +LaTeX2e <2003/12/01> +Babel <v3.8d> and hyphenation patterns for american, french, german, ngerman, b +ahasa, basque, bulgarian, catalan, croatian, czech, danish, dutch, esperanto, e +stonian, finnish, greek, icelandic, irish, italian, latin, magyar, norsk, polis +h, portuges, romanian, russian, serbian, slovak, slovene, spanish, swedish, tur +kish, ukrainian, nohyphenation, loaded. (/usr/share/texmf/tex/latex/base/article.cls -Document Class: article 2001/04/21 v1.4e Standard LaTeX document class +Document Class: article 2004/02/16 v1.4f Standard LaTeX document class (/usr/share/texmf/tex/latex/base/size10.clo -File: size10.clo 2001/04/21 v1.4e Standard LaTeX file (size option) +File: size10.clo 2004/02/16 v1.4f Standard LaTeX file (size option) ) \c@part=\count79 \c@section=\count80 @@ -22,29 +26,24 @@ File: size10.clo 2001/04/21 v1.4e Standard LaTeX file (size option) \bibindent=\dimen102 ) (/usr/share/texmf/tex/generic/babel/babel.sty -Package: babel 2001/03/01 v3.7h The Babel package +Package: babel 2004/11/20 v3.8d The Babel package (/usr/share/texmf/tex/generic/babel/portuges.ldf -Language: portuges 2001/02/16 v1.2o Portuguese support from the babel system +Language: portuges 2004/02/19 v1.2p Portuguese support from the babel system (/usr/share/texmf/tex/generic/babel/babel.def -File: babel.def 2001/03/01 v3.7h Babel common definitions +File: babel.def 2004/11/20 v3.8d Babel common definitions \babel@savecnt=\count87 \U@D=\dimen103 ) - -Package babel Warning: No hyphenation patterns were loaded for -(babel) the language `Portuguese' -(babel) I will use the patterns loaded for \language=0 instead. - -\l@portuges = a dialect from \language0 \l@brazilian = a dialect from \language\l@portuges -Package babel Info: Making " an active character on input line 126. -)) (/usr/share/texmf/tex/latex/base/inputenc.sty -Package: inputenc 2001/07/10 v0.99a Input encoding file +Package babel Info: Making " an active character on input line 145. +)) +(/usr/share/texmf/tex/latex/base/inputenc.sty +Package: inputenc 2004/02/05 v1.0d Input encoding file (/usr/share/texmf/tex/latex/base/latin1.def -File: latin1.def 2001/07/10 v0.99a Input encoding file +File: latin1.def 2004/02/05 v1.0d Input encoding file )) (/usr/share/texmf/tex/latex/graphics/graphics.sty Package: graphics 2001/07/07 v1.0n Standard LaTeX Graphics (DPC,SPQR) @@ -52,8 +51,8 @@ Package: graphics 2001/07/07 v1.0n Standard LaTeX Graphics (DPC,SPQR) (/usr/share/texmf/tex/latex/graphics/trig.sty Package: trig 1999/03/16 v1.09 sin cos tan (DPC) ) -(/usr/share/texmf/tex/latex/config/graphics.cfg -File: graphics.cfg 2001/08/31 v1.1 graphics configuration of teTeX/TeXLive +(/usr/share/texmf/tex/latex/graphics/graphics.cfg +File: graphics.cfg 2005/02/03 v1.3 graphics configuration of teTeX/TeXLive ) Package graphics Info: Driver file: dvips.def on input line 80. @@ -61,7 +60,7 @@ Package graphics Info: Driver file: dvips.def on input line 80. File: dvips.def 1999/02/16 v3.0i Driver-dependant file (DPC,SPQR) )) (/usr/share/texmf/tex/latex/hyperref/hyperref.sty -Package: hyperref 2003/01/22 v6.73n Hypertext links for LaTeX +Package: hyperref 2003/11/30 v6.74m Hypertext links for LaTeX (/usr/share/texmf/tex/latex/graphics/keyval.sty Package: keyval 1999/03/16 v1.13 key=value parser (DPC) @@ -72,43 +71,43 @@ Package: keyval 1999/03/16 v1.13 key=value parser (DPC) \Hy@pagecounter=\count89 (/usr/share/texmf/tex/latex/hyperref/pd1enc.def -File: pd1enc.def 2003/01/22 v6.73n Hyperref: PDFDocEncoding definition (HO) +File: pd1enc.def 2003/11/30 v6.74m Hyperref: PDFDocEncoding definition (HO) ) -(/usr/share/texmf/tex/latex/config/hyperref.cfg +(/usr/share/texmf/tex/latex/hyperref/hyperref.cfg File: hyperref.cfg 2002/06/06 v1.2 hyperref configuration of TeXLive and teTeX ) -Package hyperref Info: Hyper figures OFF on input line 1792. -Package hyperref Info: Link nesting OFF on input line 1797. -Package hyperref Info: Hyper index ON on input line 1800. -Package hyperref Info: Plain pages ON on input line 1805. -Package hyperref Info: Backreferencing OFF on input line 1812. +Package hyperref Info: Hyper figures OFF on input line 1880. +Package hyperref Info: Link nesting OFF on input line 1885. +Package hyperref Info: Hyper index ON on input line 1888. +Package hyperref Info: Plain pages ON on input line 1893. +Package hyperref Info: Backreferencing OFF on input line 1900. Implicit mode ON; LaTeX internals redefined -Package hyperref Info: Bookmarks ON on input line 1916. -(/usr/share/texmf/tex/latex/html/url.sty -Package: url 1999/03/02 ver 1.4 Verb mode for urls, email addresses, and file - names +Package hyperref Info: Bookmarks ON on input line 2004. +(/usr/share/texmf/tex/latex/url/url.sty +\Urlmuskip=\muskip10 +Package: url 2004/03/15 ver 3.1 Verb mode for urls, etc. ) -LaTeX Info: Redefining \url on input line 2055. +LaTeX Info: Redefining \url on input line 2143. \Fld@menulength=\count90 \Field@Width=\dimen105 \Fld@charsize=\dimen106 \Choice@toks=\toks15 \Field@toks=\toks16 -Package hyperref Info: Hyper figures OFF on input line 2513. -Package hyperref Info: Link nesting OFF on input line 2518. -Package hyperref Info: Hyper index ON on input line 2521. -Package hyperref Info: backreferencing OFF on input line 2528. -Package hyperref Info: Link coloring OFF on input line 2533. +Package hyperref Info: Hyper figures OFF on input line 2618. +Package hyperref Info: Link nesting OFF on input line 2623. +Package hyperref Info: Hyper index ON on input line 2626. +Package hyperref Info: backreferencing OFF on input line 2633. +Package hyperref Info: Link coloring OFF on input line 2638. \c@Item=\count91 \c@Hfootnote=\count92 ) *hyperref using default driver hdvips* (/usr/share/texmf/tex/latex/hyperref/hdvips.def -File: hdvips.def 2003/01/22 v6.73n Hyperref driver for dvips +File: hdvips.def 2003/11/30 v6.74m Hyperref driver for dvips (/usr/share/texmf/tex/latex/hyperref/pdfmark.def -File: pdfmark.def 2003/01/22 v6.73n Hyperref definitions for pdfmark specials +File: pdfmark.def 2003/11/30 v6.74m Hyperref definitions for pdfmark specials \pdf@docset=\toks17 \pdf@box=\box26 \pdf@toks=\toks18 @@ -135,7 +134,7 @@ LaTeX Font Info: ... okay on input line 11. Package hyperref Info: Link coloring OFF on input line 11. (/usr/share/texmf/tex/latex/hyperref/nameref.sty -Package: nameref 2001/01/27 v2.19 Cross-referencing by name of section +Package: nameref 2003/12/03 v2.21 Cross-referencing by name of section \c@section@level=\count94 ) LaTeX Info: Redefining \ref on input line 11. @@ -150,137 +149,100 @@ LaTeX Font Info: External font `cmex10' loaded for size (Font) <8> on input line 13. LaTeX Font Info: External font `cmex10' loaded for size (Font) <6> on input line 13. -LaTeX Font Info: Try loading font information for OMS+cmr on input line 31. + [1 + +] +LaTeX Font Info: Try loading font information for OMS+cmr on input line 39. (/usr/share/texmf/tex/latex/base/omscmr.fd File: omscmr.fd 1999/05/25 v2.5h Standard LaTeX font definitions ) LaTeX Font Info: Font shape `OMS/cmr/m/n' in size <10> not available -(Font) Font shape `OMS/cmsy/m/n' tried instead on input line 31. - [1 +(Font) Font shape `OMS/cmsy/m/n' tried instead on input line 39. -] -Overfull \hbox (15.53741pt too wide) in paragraph at lines 48--49 -[]\OT1/cmr/m/n/10 rebuildpkg: re-con-str^^Soi um pa-cote a par-tir de sua en-tr -ada no \OT1/cmr/m/it/10 /var/log/packages +Overfull \hbox (15.63957pt too wide) in paragraph at lines 44--45 +[]\OT1/cmr/m/n/10 rebuildpkg: re-constr^^Soi um pa-cote a par-tir de sua en-tra +da no /var/log/packages [] -Overfull \hbox (40.63974pt too wide) in paragraph at lines 68--69 -\OT1/cmr/m/n/10 Para baixar o pa-cote do sim-plepkg, v^^Sa em http://slack.midi -atatica.org/packages/noarch/. - [] - - -Overfull \hbox (64.49643pt too wide) in paragraph at lines 78--78 -[]\OT1/cmtt/m/n/10 REPOS_ROOT=SlackMidiataticaNoarch%http://slack.midiatatica.o -rg/packages/noarch[] +Overfull \hbox (16.74484pt too wide) in paragraph at lines 53--54 +\OT1/cmr/m/n/10 Para bai-xar o pa-cote do \OT1/cmr/m/it/10 sim-plepkg\OT1/cmr/m +/n/10 , v^^Sa em [][][][]. [] [2] -Overfull \hbox (122.24593pt too wide) in paragraph at lines 101--101 -[]\OT1/cmtt/m/n/10 SIMPLARET="simplaret" # programa que baixa os pacotes (pode -ser o swaret se voce o tiver)[] - [] - - -Overfull \hbox (11.99689pt too wide) in paragraph at lines 101--101 -[]\OT1/cmtt/m/n/10 STORAGE="/var/simplaret" # local onde o swaret armazena seus - pacotes[] - [] - - -Overfull \hbox (48.74657pt too wide) in paragraph at lines 101--101 -[]\OT1/cmtt/m/n/10 SIMPLARET_CLEAN="1" # apaga o cache de pacotes antes da inst -ala^^Xc~ao da jaula[] +Overfull \hbox (15.6106pt too wide) in paragraph at lines 81--82 +[]\OT1/cmr/m/n/10 A op^^Xc~ao -c (ou --create) criar^^Sa a pasta /etc/simplepkg +/templates/meu-slackware, [] -Overfull \hbox (22.4968pt too wide) in paragraph at lines 101--101 -[]\OT1/cmtt/m/n/10 SIMPLARET_DELETE_DOWN="1" # apaga o cache de pacotes ap^^Sos - a instala^^Xc~ao[] +Overfull \hbox (1.74698pt too wide) in paragraph at lines 85--86 +[]\OT1/cmr/m/it/10 /etc/simplepkg/templates/meu-slackware/meu-slackware.s\OT1/c +mr/m/n/10 : scripts de p^^Sos- [] -Overfull \hbox (132.74583pt too wide) in paragraph at lines 101--101 -[]\OT1/cmtt/m/n/10 SIMPLARET_UPDATE="0" # atualiza as listas de pacotes antes d -e iniciar a instala^^Xc~ao da jaula[] +Overfull \hbox (14.06354pt too wide) in paragraph at lines 86--87 +[]\OT1/cmr/m/it/10 /etc/simplepkg/templates/meu-slackware/meu-slackware.perms\O +T1/cmr/m/n/10 : in-forma^^Xc~oes [] -Overfull \hbox (116.99597pt too wide) in paragraph at lines 101--101 -[]\OT1/cmtt/m/n/10 SIMPLARET_PURGE_WEEKS="N" # apaga os pacotes mais velhos que - N semanas antes de instalar[] +Overfull \hbox (4.24953pt too wide) in paragraph at lines 87--88 +[]\OT1/cmr/m/it/10 /etc/simplepkg/templates/meu-slackware/meu-slackware.templat +e\OT1/cmr/m/n/10 : lista de [] - -Overfull \hbox (27.74675pt too wide) in paragraph at lines 101--101 -[]\OT1/cmtt/m/n/10 PATCHES_DIR="/var/simplaret/patches" # local os patches s~ao - armazenados[] - [] - - -Overfull \hbox (77.7997pt too wide) in paragraph at lines 103--104 -[]\OT1/cmr/m/n/10 Para definir quais reposit^^Sorios de pa-cotes voc^e usar^^Sa -, edite o ar-quivo \OT1/cmr/m/it/10 /etc/simplepkg/repos.conf\OT1/cmr/m/n/10 , - [] - - -Overfull \hbox (64.49643pt too wide) in paragraph at lines 110--110 -[]\OT1/cmtt/m/n/10 REPOS-i386="slack-midiatatica%http://slack.midiatatica.org/p -ackages/slackware"[] +[3] +Overfull \hbox (60.1397pt too wide) in paragraph at lines 132--133 +[]\OT1/cmr/m/n/10 Caso ne-nhum tem-plate for es-pe-ci-fi-cado, o mk-jail uti-li +za o tem-plate /etc/simplepkg/default. [] -Overfull \hbox (90.7462pt too wide) in paragraph at lines 110--110 -[]\OT1/cmtt/m/n/10 REPOS-x86_64-10.2="slamd-midiatatica%http://slack.midiatatic -a.org/packages/slamd64"[] +Overfull \hbox (82.35072pt too wide) in paragraph at lines 132--133 +\OT1/cmr/m/n/10 O \OT1/cmr/m/it/10 sim-plepkg \OT1/cmr/m/n/10 j^^Sa vem com al- +guns tem-pla-tes padr~oes, pre-sen-tes em /etc/simplepkg/defaults/template. [] - -Overfull \hbox (16.50899pt too wide) in paragraph at lines 123--124 -\OT1/cmr/m/it/10 /var/log/packages \OT1/cmr/m/n/10 e cria uma nova ^^Sarvore co -m esses pa-cotes na pasta \OT1/cmr/m/it/10 /vservers/jaula +[4] [5] +Overfull \hbox (43.834pt too wide) in paragraph at lines 218--219 +[]\OT1/cmr/m/n/10 atualizar^^Sa o tem-plate "slackware-1"de acordo com o conte^ +^Sudo da jaula /mnt/slackware- [] - -Overfull \hbox (12.48833pt too wide) in paragraph at lines 125--126 -\OT1/cmr/m/n/10 in-stala^^Xc~ao dessa jaula, basta colo-car-mos na pasta \OT1/c -mr/m/it/10 /etc/simplepkg/meu-slackware.d/ +[6] +Overfull \hbox (0.9947pt too wide) in paragraph at lines 236--236 +[]\OT1/cmr/bx/n/14.4 Armazenando as con-fi-gura^^Xc~oes no re-po-sit^^Sorio [] -Overfull \hbox (54.39502pt too wide) in paragraph at lines 125--126 -\OT1/cmr/m/it/10 /etc/simplepkg/meu-slackware.d/etc/apache/httpd.conf\OT1/cmr/m -/n/10 ) e os script em \OT1/cmr/m/it/10 /etc/simplepkg/meu- - [] - -[3] -Overfull \hbox (97.57161pt too wide) in paragraph at lines 135--136 -[]\OT1/cmr/m/n/10 Caso nen-hum tem-plate for es-peci-fi-cado, o \OT1/cmr/m/it/1 -0 mk-jail \OT1/cmr/m/n/10 uti-liza o tem-plate \OT1/cmr/m/it/10 /etc/simplepkg/ -default.template\OT1/cmr/m/n/10 . +Overfull \hbox (2.88947pt too wide) in paragraph at lines 240--241 +[]\OT1/cmr/m/n/10 Depois, crie um re-po-sit^^Sorio sub-ver-sion para ar-ma-ze-n +ar seus tem-pla-tes, usando [] -[4] [5] -Overfull \hbox (13.77249pt too wide) in paragraph at lines 231--232 -\OT1/cmr/m/n/10 Se voc^e quiser obter di-re-ta-mente o c^^Sodigo-fonte do \OT1/ -cmr/m/it/10 sim-plepkg\OT1/cmr/m/n/10 , baixe-o do reposit^^Sorio: +[7] [8] +Overfull \hbox (15.63957pt too wide) in paragraph at lines 352--353 +[]\OT1/cmr/m/n/10 rebuildpkg: re-constr^^Soi um pa-cote a par-tir de sua en-tra +da no /var/log/packages [] - -Overfull \hbox (17.25352pt too wide) in paragraph at lines 239--240 -\OT1/cmr/m/n/10 A p^^Sagina do \OT1/cmr/m/it/10 sim-plepkg \OT1/cmr/m/n/10 fica - em [][][][]. +[9] [10] +Overfull \hbox (43.94516pt too wide) in paragraph at lines 389--390 +\OT1/cmr/m/n/10 mesmo dis-tri-bui^^Xc~oes e pa-co-tes do tipo Slackware ^^Se ht +tp://listas.sarava.org/wws/info/slack. [] -[6] (./simplepkg.aux) ) +[11] (./simplepkg.aux) ) Here is how much of TeX's memory you used: - 2420 strings out of 95847 - 32073 string characters out of 1195948 - 90698 words of memory out of 1000001 - 5358 multiletter control sequences out of 10000+50000 - 8746 words of font info for 31 fonts, out of 500000 for 1000 - 14 hyphenation exceptions out of 1000 - 25i,6n,36p,605b,344s stack positions out of 1500i,500n,5000p,200000b,5000s - -Output written on simplepkg.dvi (6 pages, 25288 bytes). + 2546 strings out of 94501 + 33984 string characters out of 1176789 + 93715 words of memory out of 1000000 + 5722 multiletter control sequences out of 10000+50000 + 9099 words of font info for 32 fonts, out of 500000 for 2000 + 580 hyphenation exceptions out of 1000 + 25i,6n,36p,610b,287s stack positions out of 1500i,500n,5000p,200000b,5000s + +Output written on simplepkg.dvi (11 pages, 41532 bytes). diff --git a/trunk/doc/simplepkg.out b/trunk/doc/simplepkg.out index 4839e4e..0211a3d 100644 --- a/trunk/doc/simplepkg.out +++ b/trunk/doc/simplepkg.out @@ -1,11 +1,20 @@ \BOOKMARK [1][-]{section.1}{Descri\347\343o}{} \BOOKMARK [1][-]{section.2}{Arquitetura}{} \BOOKMARK [1][-]{section.3}{Instalando o simplepkg}{} -\BOOKMARK [1][-]{section.4}{Configurando o simplepkg}{} -\BOOKMARK [1][-]{section.5}{Criando jaulas e replicando instala\347\365es}{} -\BOOKMARK [1][-]{section.6}{Metapacotes}{} -\BOOKMARK [1][-]{section.7}{Upgrade de jaulas}{} -\BOOKMARK [1][-]{section.8}{Arquiteturas e vers\365es diferentes}{} -\BOOKMARK [1][-]{section.9}{Aplicativo auxiliar: rebuildpkg}{} -\BOOKMARK [1][-]{section.10}{Fonte}{} -\BOOKMARK [1][-]{section.11}{P\341gina de desenvolvimento}{} +\BOOKMARK [1][-]{section.4}{Usando o simplepkg}{} +\BOOKMARK [1][-]{section.5}{Criando templates de instala\347\343o}{} +\BOOKMARK [1][-]{section.6}{Criando jaulas e replicando instala\347\365es}{} +\BOOKMARK [1][-]{section.7}{Scripts de p\363s-instala\347\343o}{} +\BOOKMARK [1][-]{section.8}{Listando o conte\372do de um template}{} +\BOOKMARK [1][-]{section.9}{Removendo arquivos de um template}{} +\BOOKMARK [1][-]{section.10}{Apagando um template}{} +\BOOKMARK [1][-]{section.11}{Atualizando um template}{} +\BOOKMARK [1][-]{section.12}{Restaurando arquivos de configura\347\343o numa jaula}{} +\BOOKMARK [1][-]{section.13}{Armazenando as configura\347\365es no reposit\363rio Subversion}{} +\BOOKMARK [1][-]{section.14}{Atualiza\347\343o de jaulas}{} +\BOOKMARK [1][-]{section.15}{Arquiteturas e vers\365es diferentes}{} +\BOOKMARK [1][-]{section.16}{Criando um pacote de um template}{} +\BOOKMARK [1][-]{section.17}{Construindo pacotes}{} +\BOOKMARK [1][-]{section.18}{Aplicativos auxiliares}{} +\BOOKMARK [1][-]{section.19}{Par\342metros de configura\347\343o}{} +\BOOKMARK [1][-]{section.20}{Mais informa\347\365es}{} diff --git a/trunk/doc/simplepkg.tex b/trunk/doc/simplepkg.tex index 7c98e54..67e8086 100644 --- a/trunk/doc/simplepkg.tex +++ b/trunk/doc/simplepkg.tex @@ -12,230 +12,380 @@ \maketitle \begin{abstract} -O \emph{simplepkg} é um sistema de gerenciamento de pacotes que roda sobre o \emph{pkgtool}. Ele trabalha com templates -- listas com pacotes instalados, scripts e arquivos de configuração -- permitindo criar perfis de instalação que podem ser então usados para instalar o sistema numa outra partição, criar um chroot específico ou até trabalhar com o conceito de \emph{metapacotes}: uma lista de pacotes que pode ser instalada e removida com apenas um comando. +O \emph{simplepkg} é um sistema de gerenciamento de sistemas slackware que roda sobre o pkgtool. Ele é composto por vários scripts que desempenham funções de administração e desenvolvimento de sistemas do tipo Slackware, procurando fechar um circuito de produção, envolvendo a construção, a instalação de pacotes e até mesmo a instalação do sistema de forma automatizada. + +Do lado do desenvolvedor/a, ele ajuda na criação de SlackBuilds e construção de pacotes. Do lado do administrador/a, ele possibilita a instalação automatizada de sistemas, instalação de pacotes e a criação de "templates" de instalação -- que contém todos os arquivos de configuração, informações de permissões e scripts de pós-instalação de uma dada máquina ou jaula. \end{abstract} \section{Descrição} -Todas as distribuições de GNU/Linux já tem algum sistema de empacotamento amadurecido. A questão agora é a praticidade de instalar e controlar o que está instalado, tanto pacotes como arquivos de configuração de uma máquina. +Todas as distribuições de GNU/Linux já tem algum sistema de empacotamento amadurecido. A questão agora é a praticidade de instalar e controlar o que está instalado, tanto pacotes como arquivos de configuração de uma máquina, além da facilidade na criação de pacotes. Imagine por exemplo se você precisa manter uma lista de pacotes de 200 máquinas slackware, sendo que algumas são usadas como desktop, outras como servidores web, alguma sendo o servidor de email e assim por diante. Imagine agora que você perca o disco de algumas dessas máquinas ou que precise cotidianamente reinstalar ou atualizar um sistema. Usar o cd de instalação do slackware e configurar na mão toda a vez que der um pau faria com que você ficasse louco/a e desperdiçasse muito tempo, além do que sempre ocorre de esquecermos algum detalhe ou pacote durante a configuração do sistema. Manter um backup completo de cada máquina, por outro lado, pode ser muito custoso se o número delas for muito grande. -O simplepkg permite que você mantenha um template para cada grupo de máquinas e com apenas um comando instalar o template numa partição. Além do template, você precisa do \emph{swaret} configurado para os repositórios de pacote que possuem seus aplicativos. - -Gerenciar instalações e metapacotes não é tudo o que o simplepkg faz. Ele pode ser usado até na criação de \emph{vservers}. O simplepkg inclusive é um amadurecimento de idéias delineadas nos seguintes artigos: +O \emph{simplepkg} permite que você mantenha um template para cada grupo de máquinas e com apenas um comando instalar o template numa partição. Além do template, você precisa configurar o \emph{simplepkg} para obter pacotes de um repositório local ou remoto. -\begin{itemize} - \item \link{/node/3}{Rodando o OpenOffice.org em chroot no Slamd64} - \item \link{/node/6}{Criando Vservers em Slackware} - \item \link{/node/7}{Instalando o Slackware sem programa de instalação} -\end{itemize} +Gerenciar instalações e pacotes não é tudo o que o \emph{simplepkg} faz. Ele pode ser usado até na criação de jaula e vservers, podendo manter toda a configuração das máquinas num repositório Subversion. -O \emph{simplepkg} permite que o trampo proposto nos artigos acima seja simplificado a uma meia dúzia de comandos, desde que existam templates prontos. +O \emph{simplepkg} funciona não apenas com o Slackware mas com qualquer port (oficial ou não) que siga minimamente os padrões oficiais. \section{Arquitetura} -O \emph{simplepkg} é um conjunto de scripts escritos com a filosofia KISS em mente. Ele é um sistema muito simples, composto pelos seguintes comandos: +O \emph{simplepkg} é um conjunto de scripts escritos com a filosofia KISS (Keep It Simple, Stupid) em mente. Ele é um sistema muito simples, composto pelos seguintes comandos: \begin{itemize} \item mkjail: constrói uma jaula/instalação de slackware numa pasta - \item metapkg: instala ou remove um metapacote \item templatepkg: criar ou adiciona pacotes a um template \item lspkg: lista pacotes instalados - \item jail-upgrade: faz o upgrade nas jaulas - \item rebuildpkg: reconstrói um pacote a partir de sua entrada no \emph{/var/log/packages} + \item jail-update: inverso do jail-commit + \item jail-commit: atualiza o template + \item rebuildpkg: reconstrói um pacote a partir de sua entrada no /var/log/packages \item simplaret: obtém pacotes de repositórios locais ou remotos + \item createpkg: baixa, compila e empacota software de acordo com scripts presentes num repositório + \item repos: cria e mantém repositórios + \item mkbuild: cria scripts de construção de pacotes \end{itemize} -A pasta de configuração e armazenamento de templates é a \emph{/etc/simplepkg}. Templates são arquivos contendo uma lista de pacotes, um pacote por linha e com a extensão \emph{.template}. Como exemplo, um template poderia se chamar \emph{minimo.template} e conter a seguinte lista: +\section{Instalando o simplepkg} + +Para baixar o pacote do \emph{simplepkg}, vá em \link{http://slack.sarava.org/packages/noarch/}{http://slack.sarava.org/packages/noarch/}. Depois, basta usar o comando \begin{verbatim} -aaa_base -aaa_elflibs -apache -bash -bin -coreutils -findutils +installpkg simplepkg-VERSAO-noarch-BUILD.tgz \end{verbatim} -Se você quiser também é possível usar um \emph{tagfile} do slackware como template, sem nem precisar editá-lo. +\section{Usando o simplepkg} -\section{Instalando o simplepkg} +As três principais aplicações desse conjunto são: + +\begin{itemize} + \item Gerenciamento de pacotes + \item Criação e manutenção de jaulas + \item Criação de pacotes +\end{itemize} + +O gerencamento de pacotes é feito através do simplaret, e por ser algo bem específico está detalhado no artigo correspondente. As seções a seguir mostrarão como o \emph{simplepkg} pode ser utilizado para criar e manter jaulas, assim como também criar pacotes. + +\section{Criando templates de instalação} + +Originalmente, o \emph{simplepkg} foi desenvolvido para ajudar na automatização de instalações de sistemas slackware. Para isso, ele trabalha com templates -- listas com pacotes instalados, scripts e arquivos de configuração -- permitindo criar perfis de instalação que podem ser então usados para instalar o sistema numa outra partição ou criar um chroot. -Para baixar o pacote do simplepkg, vá em http://slack.midiatatica.org/packages/noarch/. Depois de instalá-lo. +A construção de um template é feita através do programa templatepkg. Para criar um template de nome "meu-slackware" contendo a lista de pacotes atualmente instalados no seu sistema, digite \begin{verbatim} -installpkg simplepkg-VERSAO-noarch-BUILD.tgz +templatepkg -c meu-slackware +\end{verbatim} + +A opção -c (ou --create) criará a pasta /etc/simplepkg/templates/meu-slackware, que conterá os seguintes componentes: + +\begin{itemize} + \item \emph{/etc/simplepkg/templates/meu-slackware/meu-slackware.d}: cópia de arquivos de configuração + \item \emph{/etc/simplepkg/templates/meu-slackware/meu-slackware.s}: scripts de pós-instalação + \item \emph{/etc/simplepkg/templates/meu-slackware/meu-slackware.perms}: informações sobre arquivos + \item \emph{/etc/simplepkg/templates/meu-slackware/meu-slackware.template}: lista de pacotes +\end{itemize} + +Esses quatro componentes são suficientes para armazenar todas as características de uma instalação de slackware: a lista de pacotes controla o software instalado (a partir do conteúdo da pasta \emph{/var/log/packages}), a cópia dos arquivos de configuração controla as personalizações feitas para o uso dos aplicativos e os scripts de pós-instalação cuidam de qualquer rotina que precisa ser realizada exatamente após a instalação do sistema. Já o arquivo de informações sobre arquivos contém as permissões, o dono/a e grupo de cada arquivo de configuração presente no template. + +Se você quiser criar um template a partir de uma instalação de slackware presente numa outra partição do sistema que não seja a raíz, basta usar um comando do tipo + +\begin{verbatim} +templatepkg -c meu-slackware /mnt/slackware \end{verbatim} -Alternativamente, se você usa o swaret, adicione em seu \emph{swaret.conf} a linha +onde /mnt/slackware é o local onde o sistema alternativo está instalado. Após criado, o template possuirá apenas a lista de pacotes contendo o nome dos aplicativos instalados no seu sistema. Como a pasta /var/log/packages não preserva a ordem de instalação dos pacotes, então talvez você queira editar manualmente a lista de pacotes de um template. Para isso, use o comando \begin{verbatim} -REPOS_ROOT=SlackMidiataticaNoarch%http://slack.midiatatica.org/packages/noarch +templatepkg -e meu-slackware \end{verbatim} -e então digite +Para adicionar um arquivo de configuração no seu novo template, basta dar um comando como \begin{verbatim} -swaret --update -swaret --install simplepkg +templatepkg -a meu-slackware /etc/hosts \end{verbatim} -\section{Configurando o simplepkg} +Isso adicionará o arquivo /etc/hosts no template "meu-slackware". Além de salvar o arquivo e copiá-lo automaticamente quando você instalar seu sistema, o \emph{simplepkg} ainda pode tomar conta de qualquer alteração que o /etc/hosts sofrer no sistema, seja mudança no conteúdo do arquivo, dono ou permissão. Se você ainda estiver armazenando seus templates num repositório svn (o que veremos a seguir), o \emph{simplepkg} pode ainda manter um histórico completo das alterações do arquivo. -Como exemplo, vamos criar uma jaula baseada nos pacotes instalados no seu slackware. Edite o arquivo \emph{/etc/simplepkg/simplepkg.conf}: +ATENÇÂO: evite ao máximo deixar arquivos contendo senhas ou chaves privadas num template. O lugar mais adequado para deixar esse tipo de coisa é num backup seguro. + +\section{Criando jaulas e replicando instalações} + +Uma vez que um template foi criado com uma lista de pacotes e opcionalmente com arquivos de configuração e scripts de pós-instalação (que serão detalhados a seguir), você pode replicar sua instalação de slackware utilizando o comando \begin{verbatim} -# /etc/simplepkg/simplepkg.conf -JAIL_ROOT="/vservers" # local onde as jaulas serão criadas -SIMPLARET="simplaret" # programa que baixa os pacotes (pode ser o swaret se voce o tiver) -STORAGE="/var/simplaret" # local onde o swaret armazena seus pacotes -SIMPLARET_CLEAN="1" # apaga o cache de pacotes antes da instalação da jaula -SIMPLARET_DELETE_DOWN="1" # apaga o cache de pacotes após a instalação -SIMPLARET_UPDATE="0" # atualiza as listas de pacotes antes de iniciar a instalação da jaula -SIMPLARET_PURGE_WEEKS="N" # apaga os pacotes mais velhos que N semanas antes de instalar -PATCHES_DIR="/var/simplaret/patches" # local os patches são armazenados +mkjail jaula meu-slackware \end{verbatim} -Para definir quais repositórios de pacotes você usará, edite o arquivo \emph{/etc/simplepkg/repos.conf}, colocando algo como +Isso cria uma nova árvore do slackware em /vserver/jaula contendo todos os pacotes e arquivos de configuração do template "meu-slackware". A instalação dos pacotes será feita pelo aplicativo simplaret, que deve estar configurado corretamente e cuja configuração padrão deve funcionar para a maioria dos casos. + +Se você quiser instalar essa jaula em outro local que não seja a pasta /vservers (esse local padrão pode ser mudado pelo arquivo de configuração do \emph{simplepkg}), basta usar um comando do tipo \begin{verbatim} -ROOT-i386="http://slack.midiatatica.org/packages/slackware" -REPOS-i386="slack-midiatatica%http://slack.midiatatica.org/packages/slackware" -ROOT-x86_64-10.2="http://darkstar.ist.utl.pt/pub/slamd64/" -REPOS-x86_64-10.2="slamd-midiatatica%http://slack.midiatatica.org/packages/slamd64" +ROOT=/mnt mkjail hda2 meu-slackware \end{verbatim} -Se você quer utilizar o swaret em lugar do simplaret, o swaret.conf deve estar bem configurado para que ele seja capaz de baixar e instalar todos os pacotes dos templates. Parâmetros como \emph{EXCLUDE} podem ser um empecilho, e se você os remover da sua instalação tenha muito cuidado ao atualizar o seu sistema via \emph{swaret --upgrade}. A desvantagem de usar o swaret é que você não terá como administrar jaulas e instalações de múltiplas arquiteturas. +O comando acima faz exatamente o que você está pensando: replica sua instalação slackware em /mnt/hda2, dispensando totalmente o programa de instalação do slackware! -Para informações detalhadas sobre o simplaret, consulte seu \link{/node/16}{artigo específico}. +Caso nenhum template for especificado, o mkjail utiliza o template /etc/simplepkg/default. O \emph{simplepkg} já vem com alguns templates padrões, presentes em /etc/simplepkg/defaults/template. -\section{Criando jaulas e replicando instalações} +\section{Scripts de pós-instalação} + +Opcionalmente, é possível manter scripts de pós-instalação num template. Tais script são executados exatamente +após a instalação de uma jaula e cópia de arquivos de configuração pelo mkjail. Para criar ou editar um script +de pós-instalação, use um comando como \begin{verbatim} -templatepkg meu-slackware -mkjail jaula meu-slackware +templatepkg -b meu-slackware nome-do-script.sh +\end{verbatim} + +Isso adicionará o script nome-do-script.sh no template "meu-slackware". O mkjail passa dois argumentos para cada script de pós-instalação: a pasta superior e o nome da jaula ("/mnt" e "hda2" no nosso exemplo anterior). Assim, um exemplo de script seria algo como + +\begin{verbatim} +#!/bin/bash +chroot $1/$2/ sbin/ldconfig \end{verbatim} -Isso cria o template \emph{meu-slackware} a partir da sua lista de pacotes em \emph{/var/log/packages} e cria uma nova árvore com esses pacotes na pasta \emph{/vservers/jaula} (dependendo de qual o valor da variável \emph{JAIL\_ROOT} do simplepkg.conf, é claro). +\section{Listando o conteúdo de um template} -Se você quiser que alguns arquivos de configuração e executar scripts após a instalação dessa jaula, basta colocarmos na pasta \emph{/etc/simplepkg/meu-slackware.d/} os arquivos de configuração (dentro da hierarquia de pastas do sistema, isto é, \emph{/etc/simplepkg/meu-slackware.d/etc/apache/httpd.conf}) e os script em \emph{/etc/simplepkg/meu-slackware.s}. O template \emph{vserver}, que já vem no mkjail, contém um exemplo de script. +Para listar os templates disponíveis ou o conteúdo de um template, use comandos como -Você pode especificar também destinos alternativos para sua jaula, através de um comando do tipo +\begin{verbatim} +templatepkg -l +templatepkg -l meu-slackware +\end{verbatim} + +\section{Removendo arquivos de um template} + +Analogamente à forma como se adicona arquivos num template, removê-los pode ser feito com o seguinte comando: \begin{verbatim} -ROOT=/mnt mkjail hda2 meu-slackware +templatepkg -d meu-slackware /etc/hosts \end{verbatim} -O comando acima faz exatamente o que você está pensando: replica sua instalação slackware em \emph{/mnt/hda2}, dispensando totalmente o programa de instalação do slackware! +Isso remove o arquivo /etc/hosts do template "meu-slackware". -Caso nenhum template for especificado, o \emph{mkjail} utiliza o template \emph{/etc/simplepkg/default.template}. +\section{Apagando um template} -Se você manter uma jaula em \emph{JAIL\_ROOT} com o mesmo nome que um template, é possível ainda usar o script \emph{jail-update} para copiar todas as alterações de arquivos da jaula na pasta de arquivos do seu template (\emph{/etc/simplepkg/nome-da-jaula.d}). Assim, basta que você copie todos os arquivos de configuração que você editou para essa pasta e deixar o \emph{jail-update} numa crontab para que você tenha sempre um template atualizado e baseado nas jaulas / instalações que você tem rodando e que estiverem listadas no arquivo \emph{/etc/simplepkg/jailist}: +Para apagar um template, basta utilizar um comando como \begin{verbatim} -jail-update +templatepkg -r meu-slackware \end{verbatim} -O \emph{jail-update} considera que o template \emph{main}, caso exista, se refere à instalação principal da sua máquina, isto é, o sistema de você roda. Dessa forma a invocação do \emph{jail-update} atualiza todos os templates cujas jaulas estão em \emph{JAIL\_ROOT} e ainda atualiza o template da instalação principal. +\section{Atualizando um template} -Para adicionar ou remover pacotes de um template, basta editar o arquivo de template. Uma outra forma de adicionar arquivos é usando o \emph{templatepkg} com a opção \emph{-a}, que adiciona apenas novos pacotes ao template. Se você quiser que o \emph{templatepkg} crie um template a partir de uma jaula, simplesmente use +Agora que já abordamos as opções do templatepkg, é hora de visitarmos um outro aplicativo, desta vez utilizado para manter um template atualizado. O jail-commit é um script que copia as alterações dos arquivos (conteúdo, propriedade e permissões) de um template a partir do conteúdo de uma jaula ou instalação. + +Por exemplo, caso se queira copiar as alterações da jaula /mnt/hda2 no template "meu-slackware", basta usar o comando \begin{verbatim} -templatepkg jaula /vservers/jaula +jail-commit /mnt/hda2 meu-slackware \end{verbatim} -\section{Metapacotes} +Além da lista de pacotes do template "meu-slackware" ser atualizada de acordo com a lista de pacotes presente em /mnt/hda2/var/log/packages, todos os arquivos de configuração presentes no template "meu-slackware" serão comparados com os correspondentes da pasta /mnt/hda2 e as diferenças são copiadas para o template. Da mesma forma, as permissões e informação de dono/grupo dos arquivos também é atualizada no template. -Outro uso dos templates é a criação de pacotes: imagine por exemplo a dificuldade de um usuário/a novo de slackware para instalar o cinelerra e todas as suas dependências. Criando um template contendo o nome de todos os pacotes necessários para rodar esse software permite que um usuário instale-o simplesmente com o comando +O comando jail-commit possibilita que um template sempre esteja atualizado e refletindo a configuração atual de uma instalação de slackware. Se você quiser atualizar apenas a lista de pacotes de um template, porém, use \begin{verbatim} -metapkg --install cinelerra +templatepkg -u meu-template \end{verbatim} -O comando sugere uma semelhança com o uso direto do \emph{swaret} ou do \emph{slapt-get}, com a única diferença residindo no modo como cada um desses programas lida com as dependências de um pacote. Os \emph{slapt-get} suporta o arquivo \emph{slack-required}, que pode ou não estar presente no pacote. Já o \emph{swaret} possui uma ferramenta própria para a criação de uma lista de dependências. +Para facilitar ainda mais o controle das alterações do sistema, existe ainda uma facilidade do arquivo /etc/simplepkg/jailist. Esse arquivo serve, além de outros propósitos descritos na documentação do simplaret, para que o jail-commit saiba de antemão quais são as instalações de sistema do tipo Slackware presentes numa máquina, além da instalação principal na raíz do sistema. + +Suponha que uma máquina possua duas instalações de slackware, além da principal (raíz): -O \emph{simplepkg} não pretende substituir esses dois modos de checagem e sim propor uma alternativa de distribuição de pacotes em que as dependências são resolvidas sem precisar de um repositório de dependências ou uma modificação no próprio pacote, que é o caso do \emph{slack-required}, um arquivo que na maioria das vezes não está presente. +\begin{itemize} + \item /mnt/slackware-1 usando o template "slackware-1" + \item /mnt/slackware-2 usando o template "slackware-2" +\end{itemize} + +Se o arquivo /etc/simplepkg/jailist contiver as seguintes linhas, + +\begin{verbatim} +/mnt/slackware-1 +/mnt/slackware-2 +\end{verbatim} -A remoção de um aplicativo e todas as suas dependências podem ser feitas simplesmente com o comando +então o comando \begin{verbatim} -metapkg --remove cinelerra +jail-commit \end{verbatim} -\section{Upgrade de jaulas} +atualizará o template "slackware-1" de acordo com o conteúdo da jaula /mnt/slackware-1 e o template "slackware-2" com o conteúdo da jaula /mnt/slackware-2. Se, além desses dois templates, existir um outro de nome "main", então o jail-commit sem argumentos também copiará as atualizações da instalação raíz, deixando-as no template "main". -O upgrade de jaulas que estejam em \emph{JAIL\_ROOT} pode ser efetuado com o comando \emph{jail-upgrade}. Simplesmente coloque os patches em \emph{PATCHES\_DIR} e dê o comando +Você pode inclusive colocar uma entrada no crontab do tipo \begin{verbatim} -jail-upgrade +20 4 * * * jail-commit \end{verbatim} -Se você quiser atualizar apenas uma das jaulas que estão em \emph{JAIL\_ROOT}, use +para que seus templates sejam atualizados diariamente. Se você ainda possui o envio de emails configurado na sua máquina, então a saída do jail-commit será enviada pelo cron diariamente para seu email, contendo diffs das alterações de arquivos de configuração a lista de pacotes adicionados ou removidos no sistema. + +\section{Restaurando arquivos de configuração numa jaula} + +A operação contrária ao que o jail-commit faz também é possível: suponha que você mexeu na configuração do sistema mas se arrependeu das alterações e deseja voltar a configuração para o modo como ela se encontra no seu template, basta usar o comando \begin{verbatim} -jail-upgrade nome-da-jaula +jail-update /mnt/hda2 meu-slackware \end{verbatim} -Para especificar uma pasta contendo patches diferente de \emph{PATCHES\_DIR} (útil quando você possui jaulas com diferentes versões do slackware), simplesmente use +\section{Armazenando as configurações no repositório Subversion} + +Para aumentar ainda mais a flexibilidade e o controle do conteúdo dos templates, é possível armazená-los num repositório Subversion. Para isso, edite o arquivo /etc/simplepkg/simplepkg.conf e deixe o parâmetro de configuração \emph{TEMPLATES\_UNDER\_SVN} com o valor "yes". + +Depois, crie um repositório subversion para armazenar seus templates, usando algo como \begin{verbatim} -PATCHES=/local/dos/patches jail-upgrade nome-da-jaula +svnadmin create /var/svn/simplepkg --fs-type fsfs \end{verbatim} -De modo análogo ao \emph{mkjail}, é possível indicar ao \emph{jail-upgrade} uma outra pasta onde a jaula está armazenada: +Com o repositório criado, basta importar seus templates com o comando \begin{verbatim} -ROOT=/otherroot jail-upgrade +templatepkg -e file:///var/svn/simplepkg \end{verbatim} +A partir daí, o comando jail-commit enviará automaticamente todas as alterações dos templates para o repositório subversion. Se, por outro lado, você quiser baixar as alterações dos templates que estão no repositório remoto para sua cópia local, use o comando + +\begin{verbatim} +templatepkg -s +\end{verbatim} + +\section{Atualização de jaulas} + +A atualização de jaulas e sistemas instalados é feita através do simplaret e também utiliza o arquivo /etc/simplepkg/jailist. Para mais informações a respeito, consulte a documentação do simplaret para mais detalhes. + \section{Arquiteturas e versões diferentes} O \emph{simplepkg} foi idealizado para permitir que um mesmo template possa ser usado para criar jaulas de arquiteturas e versões diferentes de sistemas padrão slackware. A atualização desses sistemas também é unificada. Essa possibilidade só é permitida se você usa o simplaret e não o swaret como ferramenta de obtenção de pacotes. -Por exemplo, para criar uma instalação de slackware 10.1 (assumindo que suas definições de repositórios do \emph{/etc/simplepkg/repos.conf} contenham locais com slack 10.1), basta usar o comando +Por exemplo, para criar uma instalação de slackware 10.1 (assumindo que suas definições de repositórios do /etc/simplepkg/repos.conf contenham locais com slack 10.1), basta usar o comando \begin{verbatim} VERSION=10.1 mkjail minha-jaula template-servidor \end{verbatim} -Arquiteturas diferentes também podem ser usadas. Se você está num sistema \emph{x86\_64} e quer instalar um slack 10.2 numa partição, experimente +Arquiteturas diferentes também podem ser usadas. Se você está num sistema x86\_64 e quer instalar um slack 10.2 numa partição, experimente \begin{verbatim} ARCH=i386 VERSION=10.2 ROOT=/mnt mkjail hda2 meu-slackware \end{verbatim} -Note que os templates independem de arquitetura e versão, já que eles só contém nomes de pacotes, -arquivos de configuração e scripts. Por isso, o \emph{templatepkg}, o \emph{metapkg}, o \emph{lspkg} e o \emph{jail-update} funcionam normalmente. +Note que os templates independem de arquitetura e versão, já que eles só contém nomes de pacotes, arquivos de configuração e scripts. Por isso, o templatepkg, o metapkg, o lspkg e o jail-update funcionam normalmente. -Para atualizar suas jaulas, o \emph{jail-upgrade} checa antes qual a versão e arquitetura de cada uma -de suas jaulas através do \emph{/etc/slackware-version} correspondente e a partir disso aplica os patches da arquitetura e versão da mesma, usando para isso o simplaret (veja a \link{node/16}{documentação própria}). +Para atualizar suas jaulas, o jail-upgrade checa antes qual a versão e arquitetura de cada uma de suas jaulas através do /etc/slackware-version correspondente e a partir disso aplica os patches da arquitetura e versão da mesma, usando para isso o simplaret (veja a documentação própria). -Desse modo, mesmo que você tenha jaulas de versões e arquiteturas diversas, usar o comando \emph{jail-upgrade} faz a atualização sem problemas, desde que seus patches estejam organizados por arquitetura e versão, conforme é detalhado na \link{/node/16}{documentação do simplaret}. +Desse modo, mesmo que você tenha jaulas de versões e arquiteturas diversas, usar o comando "jail-upgrade" faz a atualização sem problemas, desde que seus patches estejam organizados por arquitetura e versão, conforme é detalhado na documentação do simplaret, em http://slack.sarava.org/node/16. -\section{Aplicativo auxiliar: rebuildpkg} +\section{Criando um pacote de um template} -O simplepkg acompanha ainda um aplicativo auxiliar que ajuda a recuperar pacotes instalados cujo \emph{.tgz} original foi perdido. O comando \emph{rebuildpkg} reconstrói um pacote a partir de uma entrada no \emph{/var/log/packages}. O comando +Se, por algum motivo, você quiser construir um pacote com o conteúdo de um template, experimente o comando \begin{verbatim} -rebuildpkg coreutils +templatepkg -p nome-do-template +\end{verbatim} + +No entanto, o \emph{simplepkg} foi criado para que esse tipo de comportamento seja evitado, já que é mais simples manter templates de configuração do que pacotes contendo a configuração de uma instalação. + +\section{Construindo pacotes} + +Até aqui, apenas mostramos os aplicativos do \emph{simplepkg} usados para a manutenção de instalações de slackware. No entanto, uma das outras finalidades desta suíte é a construção de pacotes, o que é feita pelo programa createpkg, Como dito anteriormente, o createpkg: baixa, compila e empacota software de acordo com scripts presentes num repositório de scripts, funcionando com um gerenciador de "ports" para slackware. + +O createpkg pode funcionar com qualquer tipo de script de construção de pacotes (SlackBuilds) mas funcionará melhor se os mesmos seguirem o padrão descrito na página + +\begin{verbatim} +http://slack.sarava.org/wiki/Main/SlackBuilds +\end{verbatim} + +Especificamente, o createpkg foi desenvolvido para utilizar os slackbuild disponíveis em \link{http://slack.sarava.org/slackbuilds}{http://slack.sarava.org/slackbuilds}. O createpkg trabalha com repositórios do tipo subversion. + +Para obter os scripts do repositório do slack.sarava.org, digite + +\begin{verbatim} +createpkg --sync +\end{verbatim} + +Em seguida, você pode listas todos os scripts disponíveis: + +\begin{verbatim} +createpkg --list \end{verbatim} -reconstrói um pacote do coreutils usando os arquivos e as metainformações listadas no arquivo do \emph{/var/log/packages/} correspondente ao coreutils. +Para buscar por um pacote, use -\section{Fonte} +\begin{verbatim} +createpkg --search latex2html +\end{verbatim} -Se você quiser obter diretamente o código-fonte do \emph{simplepkg}, baixe-o do repositório: +No caso, a busca é feita pelo SlackBuild do aplicativo "latex2html". Suponha agora que você queira construir o pacote desse aplicativo: \begin{verbatim} -svn checkout svn://slack.midiatatica.org:40/simplepkg +createpkg latex2html \end{verbatim} -\section{Página de desenvolvimento} +O pacote resultante estará na pasta /tmp ou no valor especificado pela variável de ambiente \emph{\$REPOS}. Para criar e também instalar o pacote, basta + +\begin{verbatim} +createpkg --install latex2html +\end{verbatim} + +Se o pacote possuir dependências listadas num arquivo slack-required e que não estiverem instaladas no sistema, o createpkg tentará processá-las uma a uma antes de tentar construir o pacote desejado: se as dependências não forem encontradas no repositório de scripts, então o createpkg tentará baixá-las de um repositório binário através do simplaret. Se você não quiser que a resolução de dependências seja seguida, use a opção --no-deps. + +Para mais detalhes de funcionamento, experimente o comando + +\begin{verbatim} +createpkg --help +\end{verbatim} + +ou então acesse a página http://slack.sarava.org/wiki/Main/SlackBuilds. + +\section{Aplicativos auxiliares} + +O \emph{simplepkg} acompanha ainda alguns aplicativos auxiliares: + +\begin{itemize} + \item lspkg: lista pacotes instalados + \item rebuildpkg: reconstrói um pacote a partir de sua entrada no /var/log/packages + \item repos: cria e mantém repositórios + \item mkbuild: cria scripts de construção de pacotes +\end{itemize} + +O comando lspkg é um utilitário simples para a visualização de pacotes instalados no sistema. Já o rebuildpkg ajuda a recuperar pacotes instalados cujo tgz original foi perdido. O comando rebuildpkg reconstrói um pacote a partir de uma entrada no /var/log/packages. O comando + +\begin{verbatim} +rebuildpkg coreutils +\end{verbatim} + +reconstrói um pacote do coreutils usando os arquivos e as metainformações listadas no arquivo do /var/log/packages/ correspondente ao coreutils. + +Por fim, os scripts repos e mkbuild são os que se encontram na etapa de maior desenvolvimento: repos cria um repositório de pacotes a partir de uma pasta contendo pacotes do tipo pkgtool e o mkbuild é um aplicativo para auxiliar a criação de scripts de construção de pacotes que podem ser utilizados sozinhos ou pelo o createpkg. + +\section{Parâmetros de configuração} + +O arquivo de configuração do \emph{simplepkg} é o /etc/simplepkg/simplepkg.conf. Ele contém parâmetros de configuração de todos os scripts, porém neste texto não trataremos das opções específicas ao simplaret, as quais tem uma seção específica no artigo correspondente. + +\begin{itemize} + \item \emph{JAIL\_ROOT}: pasta padrão onde as jaulas são criadas pelo mkjail. Valor padrão: "/vservers". + \item \emph{ADD\_TO\_JAIL\_LIST}: controla se uma jaula criada pelo mkjail deve ser adicionada automaticamente no arquivo /etc/simplepkg/jailist. O valor padrão é "1" (habilitado). + \item \emph{TEMPLATES\_UNDER\_SVN}: indica se os templates estão armazenados num repositório subversion. O valor padrão é "no" (não). + \item \emph{TEMPLATE\_FOLDER}: indica qual é a pasta de templates. O valor padrão é "/etc/simplepkg/templates" e não é recomendável alterá-lo. + \item \emph{TEMPLATE\_STORAGE\_STYLE}: controla a forma de armazenamento de templates. O valor padrão é "own-folder" e essa opção apenas deve ser modificada se você armazena seus templates num formato antigo do \emph{simplepkg} e deseja manter compatibilidade. +\end{itemize} + +Vale lembrar que todas as opções booleanas (isto é, que podem ser apenas habilitadas ou desabilitadas) do simplepkg.conf tem os seguintes valores permitidos: "1" e "yes" para habilitado e "0" ou "no" para desabilitado. + +\section{Mais informações} + +O \emph{simplepkg} foi escrito por Silvio Rhatto (rhatto at riseup.net) sob licença GPL e seu código fonte é disponibilizado através do repositório subversion: + +\begin{verbatim} +svn checkout svn://slack.sarava.org/simplepkg +\end{verbatim} -A página do \emph{simplepkg} fica em \link{http://slack.midiatatica.org/wiki/Main/SimplePKG}{http://slack.midiatatica.org/wiki/Main/SimplePKG}. +O wiki de desenvolvimento: http://slack.sarava.org/wiki/Main/SimplePKG e o endereço da lista de discussão utilizada para discussões sobre o \emph{simplepkg} ou mesmo distribuições e pacotes do tipo Slackware é http://listas.sarava.org/wws/info/slack. \end{document} |