Changeset 246 for trunk


Ignore:
Timestamp:
11/15/09 16:28:18 (15 years ago)
Author:
nanardon
Message:
  • continue talk
Location:
trunk/formation-rpms
Files:
1 added
2 edited
1 copied

Legend:

Unmodified
Added
Removed
  • trunk/formation-rpms/Makefile

    r129 r246  
    44 
    55SOURCES= \ 
    6         main.tex 
     6        main.tex \ 
     7        main.handout.tex 
     8 
     9INCLUDED = \ 
     10        usage.tex \ 
     11        building.tex 
    712 
    813FIGURES= \ 
     
    1722EPS=$(FIGURES:.fig=.eps) $(IMAGES:.png=.eps) 
    1823 
     24DEPENDENCIES = $(INCLUDED) 
     25 
    1926all: pdf 
    2027 
     
    2532pesentation.dvi: 
    2633 
    27 %.dvi: %.tex $(EPS) 
     34%.dvi: %.tex $(EPS) $(DEPENDENCIES) 
    2835        (latex -halt-on-error $< && latex -halt-on-error $<) || (rm $@ && /bin/false) 
    2936 
    30 %.pdf: %.dvi 
    31         dvipdf $< $@ 
     37%.pdf: %.tex $(DEPENDENCIES) 
     38        (pdflatex -halt-on-error $< && pdflatex -halt-on-error $<) || (rm $@ && /bin/false) 
    3239 
    3340%.eps: %.fig 
     
    3744        convert $< $@ 
    3845 
     46main.handout.tex: main.tex 
     47        cat $< | sed 's/notes/handout/' > $@ 
     48 
    3949clean: 
    4050        rm -f $(EPS) 
  • trunk/formation-rpms/main.tex

    r130 r246  
    11% $Id$ 
    22\documentclass[notes]{beamer} 
    3 %\documentclass[blends,slideColor,colorBG,pdf,ps2pdf]{prosper} 
    43\usepackage[frenchb]{babel} 
    54\usepackage[T1]{fontenc} 
     
    1211  \definecolor{sidebackground}{RGB}{230,242,250} 
    1312  \color{beamerstructure} 
    14   \usetheme{Antibes} 
     13  \usetheme[secheader]{Madrid} 
    1514  \usepackage{times} 
    1615  \userightsidebarcolortemplate{\color{sidebackground}} 
     
    1817} 
    1918 
     19\begin{document} 
     20 
    2021\title{RPM: Packaging} 
    2122\subtitle{Du code source au paquetage} 
    2223\author{Olivier Thauvin} 
    23 %\email{olivier.thauvin@aerov.jussieu.fr} 
    24 %%\institution{ 
    25 %%  \includegraphics*[height=0.3\textheight]{gnutux.eps} 
    26 %%} 
    2724 
    28 \NoFrenchBabelItemize 
     25\frame{\maketitle} 
    2926 
    30 \begin{document} 
    31      
    32 \frame{\maketitle} 
    33 \frame{\tableofcontents} 
    34  
    35 \section{RPM, fondamentaux} 
    36 \subsection{Historique} 
    37 \frame{ 
    38 \title{Historique} 
    39 \vfill 
    40 Originellement: \textit{Redhat Package Manager} 
    41 \vfill 
    42 2005: Patatra: fork de Jeff Johnson: \textit{RPM Package Manager} 
    43  
    44 Il y a donc deux rpms respectivement en version 4.4.2 et 4.4.8. %% (\date) 
    45 \vfill\vfill 
    46 } 
    47  
    48 \subsection{Role de rpms} 
    49  
    50 \frame{ 
    51 \title{Roles de rpms} 
    52 \begin{itemize} 
    53 \item Gestion du parc logiciel 
    54     \begin{itemize} 
    55     \item installation 
    56     \item désinstallation 
    57     \end{itemize} 
    58 \item Controle de l'état du système 
    59     \begin{itemize} 
    60     \item Intégrité du système 
    61     \item Repérage des fichiers modifiés 
    62     \end{itemize} 
    63 \end{itemize} 
    64 } 
    65  
    66 \subsection{Les différentes parties de rpm} 
    67  
    68 \frame{ 
    69 \title{Les logiciels} 
    70 \vfill 
    71 \begin{center} 
    72 \begin{tabular}{|c|l|} 
    73 \hline 
    74 Binaire&Fonction\\ 
    75 \hline 
    76 \hline 
    77 rpm&Frontend aux modules rpm\\ 
    78 \hline 
    79 rpmi&Installation (rpm -i/U)\\ 
    80 \hline 
    81 rpmu&Installation (rpm -i/U)\\ 
    82 \hline 
    83 rpme&Désinstallation (rpm -e)\\ 
    84 \hline 
    85 rpmquery&Interrogation (rpm -q)\\ 
    86 \hline 
    87 rpmbuild&Construction de rpm\\ 
    88 \hline 
    89 rpmdb&Action sur la rpm db\\ 
    90 \hline 
    91 \end{tabular} 
    92 \end{center} 
    93 \vfill 
    94 \vfill 
    95 } 
    96  
    97 \begin{frame}[fragile] 
    98 \title{Les librairies} 
    99 \vfill 
    100 Située dans \verb+/usr/lib(64)+ 
    101 \vfill 
    102 % \begin{center} 
    103 \begin{tabular}{|c|l|} 
    104 \hline 
    105 Librairies&Rôle\\ 
    106 \hline 
    107 \hline 
    108 librpm&Lecture des fichiers rpm\\ 
    109 &Résolution des dépendances\\ 
    110 \hline 
    111 librpmbuild&Construction de rpm\\ 
    112 \hline 
    113 librpmdb&Accès à la rpm db\\ 
    114 \hline 
    115 librpmio&Abstraction générique des entrées/sorties\\ 
    116 &Evaluation des macros\\ 
    117 \hline 
    118 \end{tabular} 
    119 % \end{center} 
    120 \vfill 
    121 \vfill 
     27\begin{frame} 
     28\frametitle{Plan} 
     29\tableofcontents[hideallsubsections] 
    12230\end{frame} 
    12331 
    124 \subsection{Configuration} 
     32\include{usage} 
    12533 
    126 \begin{frame}[fragile] 
    127 \title{La configuration} 
    128 \vfill 
    129 Toute la configuration se fait via des macros, 
    130 système de variable à évaluation tardive. 
    131 \vfill 
    132 \begin{itemize} 
    133 \item /usr/lib/rpm/macros (système) 
    134 \item ~/.rpmmacros (utilisateur) 
    135 \end{itemize} 
    136 \vfill 
    137 {\scriptsize 
    138 \begin{verbatim} 
    139 %__dbi_htconfig_current     %{__dbi_htconfig} 
    140 %__dbi_htconfig_rebuild     %{__dbi_htconfig} %{__dbi_rebuild} 
    141  
    142 %_dbi_htconfig      \ 
    143   %{?_rpmdb_rebuild:%{__dbi_htconfig_rebuild}}\ 
    144   %{!?_rpmdb_rebuild:%{__dbi_htconfig_current}}\ 
    145 %{nil} 
    146 \end{verbatim} 
    147 } 
    148 \vfill 
    149 \vfill 
    150 \end{frame} 
    151  
    152 \subsection{Dépendendances} 
    153  
    154 \begin{frame}[fragile] 
    155 \title{Dépendances} 
    156 \vfill 
    157 Contraintes au niveau de l'installation ou de la construction des rpms. 
    158 \vfill 
    159 Elles s'expriment en terme package avec éventuellement 
    160 une version (\verb+<=> VERSION+). 
    161 \vfill 
    162 \vfill 
    163 {\scriptsize 
    164 \begin{tabular}{|c|l|l|} 
    165 \hline 
    166 Type&Installation&Construction\\ 
    167 \hline 
    168 \hline 
    169 \hline 
    170 Provides&Fourni&N/A\\ 
    171 \hline 
    172 \hline 
    173 Requires&A besoin de&A besoin de\\ 
    174 \hline 
    175 Conflicts&Ne peut pas être installer avec&Ne peut être construit avec\\ 
    176 \hline 
    177 Obsoletes&Remplace (discrètement)&N/A\\ 
    178 \hline 
    179 Trigger&Déclancher une action si \ldots est installé&N/A\\ 
    180 \hline 
    181 \end{tabular} 
    182 } 
    183 \vfill 
    184 \vfill 
    185 \end{frame} 
    186  
    187 \subsection{Architectures} 
    188  
    189 \section{prélimaires} 
    190  
    191 \section{le .spec} 
    192 \subsection{composition} 
    193 \subsection{minimal} 
    194 \subsection{sections} 
    195 \subsection{"libidification"} 
    196  
    197 \section{Exemples concrets} 
    198 \subsection{\%configure} 
    199 \subsection{un module perl} 
     34\include{building} 
    20035 
    20136\end{document} 
  • trunk/formation-rpms/usage.tex

    r234 r246  
    1 % $Id$ 
    2 \documentclass[notes]{beamer} 
    3 %\documentclass[blends,slideColor,colorBG,pdf,ps2pdf]{prosper} 
    4 \usepackage[frenchb]{babel} 
    5 \usepackage[T1]{fontenc} 
    6 \usepackage{multicol} 
    7 \usepackage[framesassubsections]{beamerprosper} 
    8  
    9 \mode<presentation> 
    10 { 
    11   \definecolor{beamerstructure}{RGB}{143,79,112} 
    12   \definecolor{sidebackground}{RGB}{230,242,250} 
    13   \color{beamerstructure} 
    14   \usetheme{Antibes} 
    15   \usepackage{times} 
    16   \userightsidebarcolortemplate{\color{sidebackground}} 
    17   \beamertemplateballitem 
    18 } 
    19  
    20 \title{RPM: Packaging} 
    21 \subtitle{Du code source au paquetage} 
    22 \author{Olivier Thauvin} 
    23 %\email{olivier.thauvin@aerov.jussieu.fr} 
    24 %%\institution{ 
    25 %%  \includegraphics*[height=0.3\textheight]{gnutux.eps} 
    26 %%} 
    27  
    28 \NoFrenchBabelItemize 
    29  
    30 \begin{document} 
    31      
    32 \frame{\maketitle} 
    33 \frame{\tableofcontents} 
    34  
    35 \section{RPM, fondamentaux} 
    36 \subsection{Historique} 
    37 \frame{ 
    38 \title{Historique} 
    39 \vfill 
     1\section{Présentation de rpms} 
     2 
     3\frame{ 
     4\frametitle{Historique} 
     5\vfill 
     6\begin{block}{Origine} 
    407Originellement: \textit{Redhat Package Manager} 
    41 \vfill 
     8 
     9\href{http://rpm.org/}{http://rpm.org/} 
     10\end{block} 
     11\vfill 
     12\begin{block}{Le fork} 
    42132005: Patatra: fork de Jeff Johnson: \textit{RPM Package Manager} 
    43  
    44 Il y a donc deux rpms respectivement en version 4.4.2 et 4.4.8. %% (\date) 
    45 \vfill\vfill 
    46 } 
    47  
    48 \subsection{Role de rpms} 
    49  
    50 \frame{ 
    51 \title{Roles de rpms} 
    52 \begin{itemize} 
    53 \item Gestion du parc logiciel 
     14\href{http://rpm5.org/}{http://rpm5.org/} 
     15 
     16Il y a donc deux rpms respectivement en version 4.6.0 et 4.5.2. (au \today{} ) 
     17\end{block} 
     18\vfill 
     19} 
     20 
     21\frame{ 
     22\frametitle{Roles de rpms} 
     23\begin{block}{Gestion des logiciels installés} 
    5424    \begin{itemize} 
    5525    \item installation 
    5626    \item désinstallation 
     27    \item mise à jour 
    5728    \end{itemize} 
    58 \item Controle de l'état du système 
     29\end{block} 
     30 
     31\begin{block}{Controle de l'état du système} 
    5932    \begin{itemize} 
    6033    \item Intégrité du système 
    6134    \item Repérage des fichiers modifiés 
    6235    \end{itemize} 
    63 \end{itemize} 
    64 } 
     36\end{block} 
     37} 
     38 
     39\frame{ 
     40\frametitle{Rpm ?} 
     41\begin{block}{Le terme rpm désigne} 
     42\begin{itemize} 
     43\item un logiciel 
     44\item une série de commandes 
     45\item une format de fichier 
     46\end{itemize} 
     47\end{block} 
     48} 
     49 
     50\section{Fonctionnement} 
     51 
     52\begin{frame}[fragile] 
     53\frametitle{Information de base d'un rpm} 
     54\begin{block}{Version d'un rpm} 
     55\begin{itemize} 
     56\item le nom: deux rpm de même nom se remplacent 
     57\item la version: identifie la version du logiciel 
     58\item la release: la version du rpm pour la version de ce logiciel 
     59\item l'epoch: permet de forcer l'ordre entre deux versions 
     60\end{itemize} 
     61\end{block} 
     62\pause 
     63\vfill 
     64\begin{block}{l'Architecture} 
     65\begin{itemize} 
     66\item assure que le logiciel fonctionne sur la machine 
     67\item \verb+noarch+ indique que le rpm fonctionne "partout" 
     68\item ont des priorités (i586 est mieux que i386) 
     69\end{itemize} 
     70\end{block} 
     71\pause 
     72\vfill 
     73\begin{exampleblock}{} 
     74foo-2.1-1.i586 mets à jour foo-2.0-1.i586 
     75\end{exampleblock} 
     76\end{frame} 
     77 
     78\begin{frame}[fragile] 
     79\frametitle{Dépendances} 
     80\vfill 
     81\begin{block}{} 
     82\begin{itemize} 
     83\item Contraintes au niveau de l'installation (ou de la construction) des rpms. 
     84\item Elles s'expriment en terme de mot clef avec éventuellement 
     85une version (\verb+<=> VERSION+). 
     86\end{itemize} 
     87\end{block} 
     88\pause 
     89\vfill 
     90\begin{block}{Les type de dépendances} 
     91{\scriptsize 
     92\begin{tabular}{|c|l|l|} 
     93\hline 
     94Type&Installation&Construction\\ 
     95\hline 
     96\hline 
     97Provides&Fourni&N/A\\ 
     98\hline 
     99\hline 
     100Requires&A besoin de&A besoin de\\ 
     101\hline 
     102Conflicts&Ne peut pas être installer avec&Ne peut être construit avec\\ 
     103\hline 
     104Obsoletes&Remplace (discrètement)&N/A\\ 
     105\hline 
     106Trigger&Déclancher une action si \ldots est installé&N/A\\ 
     107\hline 
     108\end{tabular} 
     109} 
     110\end{block} 
     111\pause 
     112\vfill 
     113\begin{alertblock}{Relations:} 
     114Toutes les contraintes s'appliquent sur les \verb+provides+ dans 
     115\verb+obsoletes+ qui s'appliquent sur le nom du rpm. 
     116\end{alertblock} 
     117\vfill 
     118\end{frame} 
     119 
     120 
     121\section{Les .rpm} 
     122 
     123\subsection{Format} 
     124 
     125\frame{ 
     126\frametitle{Contenu d'un fichier rpm} 
     127\begin{block}{le Lead} 
     128Quasi inutilisé désormais 
     129\end{block} 
     130\begin{block}{Le Header} 
     131Contient la description du fichier rpm, sous de tags 
     132\end{block} 
     133\begin{block}{L'Archive CPIO} 
     134Les fichiers à installer sous format d'un cpio généralement compréssés 
     135\end{block} 
     136} 
     137 
     138\frame{ 
     139\frametitle{Le Header} 
     140\begin{block}{Format} 
     141\begin{itemize} 
     142\item à ce jour, format binaire 
     143\item liste de Tags 
     144\end{itemize} 
     145\end{block} 
     146\vfill 
     147\begin{block}{Les tags} 
     148\begin{itemize} 
     149\item chaque tag a un nom 
     150\item plusieurs type: numérique, chaine, binaire 
     151\item valeurs multiple possible pour certains 
     152\end{itemize} 
     153\end{block} 
     154\vfill 
     155\begin{exampleblock}{Exemple de tag} 
     156\begin{tabular}{|c|l|} 
     157\hline 
     158NAME&Nom du rpms\\ 
     159\hline 
     160PACKAGER&Celui qui a fait le rpm\\ 
     161\hline 
     162 
     163\end{tabular} 
     164\end{exampleblock} 
     165} 
     166 
     167\section{Le programme} 
    65168 
    66169\subsection{Les différentes parties de rpm} 
    67170 
    68171\frame{ 
    69 \title{Les logiciels} 
     172\frametitle{Les logiciels} 
    70173\vfill 
    71174\begin{center} 
     
    96199 
    97200\begin{frame}[fragile] 
    98 \title{Les librairies} 
     201\frametitle{Les librairies} 
    99202\vfill 
    100203Située dans \verb+/usr/lib(64)+ 
     
    125228 
    126229\begin{frame}[fragile] 
    127 \title{La configuration} 
     230\frametitle{La configuration} 
    128231\vfill 
    129232Toute la configuration se fait via des macros, 
     
    150253\end{frame} 
    151254 
    152 \subsection{Dépendendances} 
    153  
    154 \begin{frame}[fragile] 
    155 \title{Dépendances} 
    156 \vfill 
    157 Contraintes au niveau de l'installation ou de la construction des rpms. 
    158 \vfill 
    159 Elles s'expriment en terme package avec éventuellement 
    160 une version (\verb+<=> VERSION+). 
    161 \vfill 
    162 \vfill 
    163 {\scriptsize 
    164 \begin{tabular}{|c|l|l|} 
    165 \hline 
    166 Type&Installation&Construction\\ 
    167 \hline 
    168 \hline 
    169 \hline 
    170 Provides&Fourni&N/A\\ 
    171 \hline 
    172 \hline 
    173 Requires&A besoin de&A besoin de\\ 
    174 \hline 
    175 Conflicts&Ne peut pas être installer avec&Ne peut être construit avec\\ 
    176 \hline 
    177 Obsoletes&Remplace (discrètement)&N/A\\ 
    178 \hline 
    179 Trigger&Déclancher une action si \ldots est installé&N/A\\ 
    180 \hline 
    181 \end{tabular} 
    182 } 
    183 \vfill 
    184 \vfill 
    185 \end{frame} 
    186  
    187 \subsection{Architectures} 
    188  
    189 \section{prélimaires} 
    190  
    191 \section{le .spec} 
    192 \subsection{composition} 
    193 \subsection{minimal} 
    194 \subsection{sections} 
    195 \subsection{"libidification"} 
    196  
    197 \section{Exemples concrets} 
    198 \subsection{\%configure} 
    199 \subsection{un module perl} 
    200  
    201 \end{document} 
     255 
Note: See TracChangeset for help on using the changeset viewer.