cnam.marc/cnam/travaux/blanc/document/moyens.tex
Marc Beninca 0b151aac06 wip
2020-07-08 20:15:05 +02:00

142 lines
4.4 KiB
TeX

\section{Moyens}
L’accent sera ici mis sur l’utilisation de logiciels libres
et de l’approche \gls{wysiwym} pour améliorer la fiabilité de la production.
Choix d’outils pour l’implémentation de trois grandes phases :
\begin{itmz}
\item{mettre en place des opérations clés incontournables}
\item{automatiser l’exécution de ces tâches cohérentes}
\item{étendre le spectre de manipulations automatisables}
\end{itmz}
%⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅
\hr
%⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅
\subsection{Rationalisation}
\subsubsection{Gestion de configuration distribuée}
Utiliser un outil permettant à la fois de :
\begin{itmz}
\item{sauvegarder des modifications partielles de document en tant que telles}
\item{bénéficier d’un contrôle d’intégrité automatique de ces sauvegardes}
\item{travailler séparément sur différents contextes de modifications}
\item{intégrer des modifications provenant de divers collaborateurs}
\item{répliquer ces sauvegardes sur plusieurs serveurs pour plus de disponibilité}
\end{itmz}
Les plus connus étant :
Git \cite{git}, Mercurial \cite{hg}, Fossil, Bazaar.
\subsubsection{Production}
\subsubsection{Processus de fabrication}
Définir un cheminement menant à la reproductibilité d’un document.
La plupart du temps :
\begin{itmz}
\item{extractions d’éléments depuis des documents sources}
\item{préparations ou conversions d’éléments à intégrer}
\item{compilation du document avec intégration de ressources}
\item{assemblage final avec d’autres documents si besoin}
\item{signature du document, si besoin d’authentification}
\end{itmz}
%⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅
\hr
%⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅
\subsection{Automatisation}
\subsubsection{Fichiers de fabrication}
Make
\subsubsection{Scripts d’assemblage}
BASH, Python.
\subsubsection{Scripts de synchronisation}
OpenSSH + Rsync.
%⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅
\hr
%⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅
\subsection{Manipulations}
De multiples étapes peuvent intervenir dans la reproduction d’un document :
\subsubsection{Conversion}
ImageMagick, PanDoc.
\subsubsection{Découpe de documents}
Extraction de certaines pages d’un document source déjà existant.
\gls{pdftk}.
\subsubsection{Extraction d’éléments}
Récupération d’une ou plusieurs images spécifiques d’un autre document.
Poppler, GhostScript.
\subsubsection{Rotation d’éléments}
Ajustement de l’orientation de pages ou images disponibles.
\gls{pdftk}, ImageMagick.
\subsubsection{Compression d’images}
Réduction du volume de données occupé par des images.
ImageMagick.
\subsubsection{Résolution d’impression}
Modification de la taille d’images par rapport au gabarit du document.
ImageMagick.
\subsubsection{Assemblage de documents}
\gls{pdftk}.
\subsubsection{Signature numérique}
Pouvoir vérifier l’authenticité du document, quand consulté par des personnes.
\gls{gpg}, \gls{pgp}.
Signer un document :
\begin{lstlisting}[language=sh]
gpg
--armor # sous forme textuelle
--detach-sign # signer dans un fichier séparé
'nom_du_document.pdf' # ce document
\end{lstlisting}
Vérifier une signature :
\begin{lstlisting}[language=sh]
gpg
--verify # vérifier la validité
'nom_du_document.pdf.asc' # de cette signature
'nom_du_document.pdf' # pour ce document
\end{lstlisting}
\subsubsection{Réplication de contenus}
Répliquer régulièrement à plusieurs endroits, pour une disponibilité constante.
Rsync.
\pagebreak