diff --git a/chap/Bonjour.tex b/chap/Bonjour.tex index 914a81e..aafeab6 100644 --- a/chap/Bonjour.tex +++ b/chap/Bonjour.tex @@ -24,7 +24,6 @@ Et la drague, le meilleur moyen c'est quand même du broadcast\index{broadcast} sur UDP\index{UDP}. Il y a même un logiciel spécialisé pour entendre ça : - \begin{quote} mdns-scan is a tool for scanning for mDNS/DNS-SD published services on the local network. It issues a mDNS\index{mDNS} PTR query to the special @@ -59,9 +58,17 @@ Que faire de toutes ces information, à part savoir que la machine \section{Code} -XXX\index{XXX} +Je suppose qu'il faut commencer par découvrir Avahi et ses +quelques fichiers de configuration\footnote{Chez Debian}. -Je ne sais même pas par où commencer \textit{:)} +\begin{itemize} +\item \texttt{/etc/avahi/hosts} +\item \texttt{/etc/dbus-1/system.d/avahi-dbus.conf} +\item \texttt{/etc/avahi/avahi-daemon.conf} +\item \texttt{/etc/init.d/avahi-daemon} +\end{itemize} + +Attention aux yeux, il y a parfois du XML\index{XML} dans ces choses là.. % ----------------------------------------------------------- diff --git a/chap/Fedora.tex b/chap/Fedora.tex index 8007721..e7487a8 100644 --- a/chap/Fedora.tex +++ b/chap/Fedora.tex @@ -1,30 +1,46 @@ \chapter{Fedora} -\label{chap:fedora} \index{Fedora} +\label{chap:Fedora} \index{Fedora} % - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \section{Gestion des paquets} -DNF\index{dnf} semble être l'outil de prédilection. +Les paquets sont du modèle RPM\index{RPM} à la mode +de Red-Hat et DNF\index{dnf} semble être l'outil de prédilection +pour les gérer. + +Pour chercher un binaire précis~: + +\texttt{\# dnf provides '*/pngfix'} % - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \section{Firewall} Krkrkr, UPD\index{UDP} est bloqué en entrée ? Wtf ? +\textsf{\textsc{ welcome to firewalld}} + % - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \section{Include dir} Chez Fedora, certains fichiers \texttt{.h} ne sont pas à la même place que dans d'autres distributions\index{Debian}, ce qui cause quelques -soucis pour les compilations. +soucis pour les compilations. Par exemple le fichier \texttt{pam.h} +de NetPbm. + +Un contournement est possible avec une option lors du lancement +de gcc : +\texttt{gcc \$(COPT) -I/usr/include/netpbm -c \$<}, dont la +portabilité est à vérifier. % - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \section{Comment installer ffmpeg ?} \index{ffmpeg} -D'après Blaise (regatta) il faut voir du coté de rpmfusion. +D'après Blaise (regatta game) il faut voir du coté de +\texttt{rpmfusion}\index{rpmfusion}, qui contient de nombreux +paquets additionnels. % - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/chap/GIT.tex b/chap/GIT.tex index 64b1efb..09d282c 100644 --- a/chap/GIT.tex +++ b/chap/GIT.tex @@ -1,5 +1,5 @@ \chapter{GIT} -\index{GIT} \label{GIT} +\index{GIT} \label{chap:GIT} Git est un système de gestion de version, très bien expliqué aux quatre coins des interwebs. Je ne vais donc pas m'étendre @@ -18,7 +18,6 @@ $ > README.txt $ git add README.txt \end{verbatim} - \subsection{Setup du serveur} Sur le serveur distant, dans un endroit accessible par diff --git a/chap/IPv6.tex b/chap/IPv6.tex index 087e585..57ad8bb 100644 --- a/chap/IPv6.tex +++ b/chap/IPv6.tex @@ -1,7 +1,9 @@ -\chapter{IPv6} \label{chap/IPv6} +\chapter{IPv6} \label{chap:IPv6} \index{IPv6} +\section{Trucs} + Désactivation : \texttt{echo '1' > /proc/sys/net/ipv6/conf/lo/disable\_ipv6} diff --git a/chap/MIDI.tex b/chap/MIDI.tex index 556c1e9..1238a29 100644 --- a/chap/MIDI.tex +++ b/chap/MIDI.tex @@ -1,5 +1,5 @@ \chapter{Musical Instrument Digital Interface} -\label{chap:midi} \index{MIDI} +\label{chap:MIDI} \index{MIDI} Dans un premier temps, je vais me concentrer sur les services \textsc{midi} offerts par la couche ALSA d'un @@ -7,6 +7,31 @@ système Linux. Ensuite, nous passerons aux \textit{raw devices} (page \pageref{midi:raw}). +Mais avant tout, un petit rappel sur ce qu'est le MIDI. + +\begin{quote} +\textsl{Wikipedia} : +C'est un protocole de communication et un format de fichier dédiés +à la musique, et utilisés pour la communication entre instruments +électroniques, contrôleurs, séquenceurs, et logiciels de musique. +Apparu dans les années 1980, issu d'une volonté de l'industrie de +normaliser les échanges entre les différents instruments, +ce protocole est devenu aujourd'hui un standard très répandu +dans le matériel électronique de musique. +\end{quote} + +Attention, ce système \textbf{ne} transporte \textbf{pas} de +signal audio, mais de petits messages +(quelques octets, en général 3) de \textbf{commande} informatique% +\footnote{C'est une confusion fréquente qui complique les choses}. +Un exemple de message basique, c'est celui-ci, exprimé en +hexadécimal\index{hexa.} : +\texttt{93 5B 3A} un message qui va déclencher, sur le canal 3, +la note \textsf{Sol5}, à +un niveau assez bas. Et c'est l'instrument à l'autre bout di fil +qui va générer le signal audio. + + % --------------------------------------------------------- \section{Outils de base} @@ -17,14 +42,14 @@ nous passerons aux Cet outil permet de voir de façon relativement claire \textbf{tous} les évènements \textsc{midi} qui rentre par un chemin donné, et, en première étape, - surtout de lister ces chemins. +surtout de lister ces chemins. \begin{verbatim} tth@plop:~/Muzak/Samples$ aseqdump -l - Port Client name Port name - 0:0 System Timer - 0:1 System Announce - 14:0 Midi Through Midi Through Port-0 + Port Client name Port name + 0:0 System Timer + 0:1 System Announce + 14:0 Midi Through Midi Through Port-0 \end{verbatim} \subsection{aconnect} diff --git a/chap/MINITEL.tex b/chap/MINITEL.tex index 59cb59c..89fcb19 100644 --- a/chap/MINITEL.tex +++ b/chap/MINITEL.tex @@ -1,6 +1,6 @@ % =============================================================== \chapter{MINITEL} -\label{MINITEL} +\label{chap:MINITEL} Une très belle réussite technologique française, dont la fin de vie est annoncée pour 2014. diff --git a/chap/OSC.tex b/chap/OSC.tex index e26b6d5..cac6bb8 100644 --- a/chap/OSC.tex +++ b/chap/OSC.tex @@ -1,5 +1,5 @@ \chapter{Open Sound Control} -\index{OSC} \label{chap:osc} +\index{OSC} \label{chap:OSC} Wikipedia : \textsl{OSC est un format de transmission de données entre ordinateurs, diff --git a/chap/Raspberry.tex b/chap/Raspberry.tex index f9c4eca..fbe12ec 100644 --- a/chap/Raspberry.tex +++ b/chap/Raspberry.tex @@ -1,5 +1,5 @@ \chapter{Raspberry Pi} -\label{chap:raspberry} +\label{chap:Raspberry} \index{Raspberry} \section{Quel OS ?} diff --git a/chap/WiFi.tex b/chap/WiFi.tex index 3209272..ee23a4e 100644 --- a/chap/WiFi.tex +++ b/chap/WiFi.tex @@ -1,5 +1,5 @@ \chapter{WiFi} -\label{WiFi} +\label{chap:WiFi} WIreless FIdelity. diff --git a/chap/X11.tex b/chap/X11.tex index 5e11d96..22476a5 100644 --- a/chap/X11.tex +++ b/chap/X11.tex @@ -1,5 +1,5 @@ \chapter{X11} -\label{X11}\index{X11} +\label{chap:X11}\index{X11} %------------------------------------------------------------------- \section{Les fontes} diff --git a/chap/dino.tex b/chap/dino.tex index c064d31..0adc198 100644 --- a/chap/dino.tex +++ b/chap/dino.tex @@ -2,6 +2,7 @@ % TRUCS DE VIEUX \chapter{trucs de dino} +\label{chap:dino} Je vais, dans ce chapitre, parler de choses que les moins de vingt ans ne peuvent pas connaitre. Des choses qui existaient diff --git a/chap/divers.tex b/chap/divers.tex index 457c370..3e55c7d 100644 --- a/chap/divers.tex +++ b/chap/divers.tex @@ -1,5 +1,5 @@ \chapter{Trucs divers} -\label{divers} +\label{chap:divers} \section{Permissions} @@ -18,7 +18,6 @@ Question : qui tombe à l'eau ? % ============================================================== - \section{Prompt} \index{prompt} diff --git a/chap/gnuplot.tex b/chap/gnuplot.tex index a5fa0d3..a434228 100644 --- a/chap/gnuplot.tex +++ b/chap/gnuplot.tex @@ -2,7 +2,7 @@ % nouveau 27 septembre 2020 % \chapter{Gnuplot} -\index{Gnuplot}\label{chap:Gnuplot} +\index{Gnuplot}\label{chap:gnuplot} \section{Exemple : le phytotron} \index{phytotron} diff --git a/chap/graphisme.tex b/chap/graphisme.tex new file mode 100644 index 0000000..06110bf --- /dev/null +++ b/chap/graphisme.tex @@ -0,0 +1,7 @@ +\chapter{Graphismes} + +\section{Flydraw}\index{Flydraw} + +flydraw is a drawing tool based on an interpreter which parses a +language featuring rich graphic primitives; it uses libgd to output +GIF, JPEG, or PNG\index{PNG} files. diff --git a/chap/hardware.tex b/chap/hardware.tex index f3b0751..1fc002e 100644 --- a/chap/hardware.tex +++ b/chap/hardware.tex @@ -1,5 +1,5 @@ \chapter{Hardware} -\label{Hardware} +\label{chap:hardware} diff --git a/chap/image.tex b/chap/image.tex index 10e0e7b..a272afd 100644 --- a/chap/image.tex +++ b/chap/image.tex @@ -13,9 +13,16 @@ d'un script shell pour le réutiliser la semaine prochaine. Attention, ça va devenir \textsl{hardu}% \footnote{Nous attendons tous avec impatience l'ouvrage magistral de maitre Brunus}, -l'abondance d'options -des outils ImageMagick est vraiment énorme, et leurs -interactions parfois troublantes\dots +l'abondance d'options des outils ImageMagick est vraiment énorme, +et leurs interactions parfois troublantes\dots + +\subsection{\texttt{geometry}} + +C'est une notion importante, car elle est utilisée comme paramètre +par beaucoup d'options. C'est avec ça que l'on peut définir des +choses comme la taille (largeur et hauteur) d'une image, ou +la position d'un texte dans l'image, ou une zone sur laquelle +on va travailler. \subsection{Écrire du texte} @@ -75,10 +82,15 @@ Dans cette fonctionnalité aussi, il semble y avoir quelques subtilités. \begin{verbatim} -DIM="1024x768" -convert -crop ${DIM}+512+0 $img $dst +DIMENSION="1024x768" +POSITION="+R12+0" +convert -crop ${DIMENSION}${POSITION} +repage $img $dst \end{verbatim} +\textsl{Use +repage to completely remove/reset the virtual canvas meta-data +from the images.} En gros, on en a besoin quand une opération va +changer la dimension de l'image. + % ------------------------------------------------------------------- @@ -106,4 +118,28 @@ for ((y=0; y<250; y++)) { echo "$((x^y)) $((x^y)) $((x|y))" # r, g, b } } -\end{verbatim} \ No newline at end of file +\end{verbatim} + +\subsection{Questions} + +Comment faire un resize ? + +% ------------------------------------------------------------------- + +\section{Portable Network Graphic}\index{PNG} + +Voici le problème du soir% +\footnote{\textsl{trollday}Fri Nov 13 00:07:19 CET 2020} : +j'utilise pour lire ce format de fichier la bibliothèque +\texttt{pnglite} qui a de gros soucis avec beaucoup de +ceux-ci, par exemple ceux qui sont en \texttt{sRGB} crées +par des outils essentiels comme POVray\index{POVray}. + +pngcrush ? + +\texttt{pngtopnm \$png | pnmtopng > \$goodpng} + + + + +% ------------------------------------------------------------------- diff --git a/chap/reseau.tex b/chap/reseau.tex index 310b8cb..f3ac354 100644 --- a/chap/reseau.tex +++ b/chap/reseau.tex @@ -1,5 +1,5 @@ \chapter{Les intertubes} -\label{Internet} \index{Internet} +\label{chap:reseau} \index{Internet} Ah, le grand Internet sauvage, il serait temps qu'on en parle un peu. Nous allons voir dans ce chapitre quelques utilisations @@ -7,7 +7,7 @@ que l'on peut qualifier de «~créatives~». Si vous attendiez des choses plus sérieuses, j'ai aussi ça en magasin : \textsc{dns} page \pageref{chap:DNS}, -\textsc{ssh} page \pageref{ssh}, +\textsc{ssh} page \pageref{chap:ssh}, streaming page \pageref{streaming}, et probablement bien d'autres à venir. @@ -29,6 +29,13 @@ il offre plus de souplesse dans la configuration et la gestion des droits d'accès. +Ceci dit, de nos jours\footnote{Wed Nov 11 04:47:50 CET 2020}, +il a probablement été remplacé par quelque chose d'encore plus +étrange basé sur \textsl{systemd}\index{systemd}, +puisque l'important +ça n'est pas que ça soit mieux, mais que ce soit +\textbf{nouveau}. + \subsection{qotd} \index{qotd} @@ -76,9 +83,9 @@ réseau local Ethernet\dots Mais cette translation d'adresse peut avoir aussi d'autres défits à relever pour en faire une solution complexe et amusante à des problèmes inexistants et datant du siècle -dernier. Par exemple la comparaison de la mise en œuvre du NAT -avec -\texttt{iptable} et \texttt{pfctl} est une source de trolls +dernier. +Par exemple la comparaison de la mise en œuvre du NAT +avec \texttt{iptable} et \texttt{pfctl} est une source de trolls sans fin. @@ -135,13 +142,25 @@ ce passe-muraille, je vais laisser ce passage en l'état... % ============================================================== -\section{outils de diagnostic} - +\section{Outils de diagnostic} iftop\index{iftop}, iptraf\index{iptraf} \dots +% ------------------------------------------------------------- +\subsection{iperf} +\index{iperf} + +Avec \texttt{iperf}, on peut mesurer le débit du réseau +IP (en TCP\index{TCP} ou UDP\index{UDP}) +entre deux machines. Il faut d'abord le lancer sur la machine +cible en mode "serveur" ou "daemon". +Ensuite, des clients peuvent mesurer le débit entre eux-même +et le serveur. + +Le port par défaut utilisé est le 5001. + % ------------------------------------------------------------- \subsection{tcpdump} \index{tcpdump} @@ -150,12 +169,19 @@ C'est clairement un outil dédié au voyeurisme, mais qui permet de décrypter les ésotérismes de MiniMad\index{minimad}. C'est donc sur cet exemple que nous allons partir. +Ces gadgets dialoguent entre eux par le protocole +\textsl{Bonjour}\index{Bonjour}, aka \textsl{ZeroConf}% +\footnote{C'est en page \pageref{chap:Bonjour} qu'on +en parle vaguement}. + % ------------------------------------------------------------- \subsection{nmap} \index{nmap} -C'est clairement aussi un outil dédié au voyeurisme :) +C'est clairement aussi un outil dédié au voyeurisme à distance, +puisque il permet de découvrir, avec plus ou moins de détails, +les services exposés à l'extérieur par une machine distante. % ============================================================== @@ -164,10 +190,11 @@ C'est clairement aussi un outil dédié au voyeurisme :) \begin{quote} The nc (or netcat) utility is used for just about anything under the sun -involving TCP or UDP. It can open TCP connections, send UDP packets, +involving TCP or UDP. It can open TCP connections, send UDP packets, listen on arbitrary TCP and UDP ports, do port scanning, and deal with -both IPv4 and IPv6\footnote{Voir le chapitre \ref{chap/IPv6}} -. Unlike telnet(1), nc scripts nicely, and separates +both IPv4 and IPv6\footnote{Voir le chapitre \ref{chap:IPv6} pour cette +nouveauté.}. +Unlike telnet(1), nc scripts nicely, and separates error messages onto standard error instead of sending them to standard output, as telnet(1) does with some. \end{quote} diff --git a/chap/son.tex b/chap/son.tex index c6c9c22..7ddc279 100644 --- a/chap/son.tex +++ b/chap/son.tex @@ -1,5 +1,5 @@ \chapter{Son} -\label{Son} +\label{chap:son} %------------------------------------------------------------------ @@ -10,7 +10,7 @@ ALSA, \textit{Advanced Linux Sound Architecture}, gère à peu près correctement les entrées/sorties sonores d'une machine Linux, aussi bien en audio qu'en -\textsc{midi}\footnote{Voir page \pageref{MIDI} +\textsc{midi}\footnote{Voir page \pageref{chap:midi} pour en savoir plus.}. Nous allons faire le tour de quelques outils associés. @@ -34,7 +34,7 @@ James Lewis\footnote{Que ça, c'est de la noise !}. Si vous avez plusieurs cartes son, la sélection du \textsl{device} est assez piégeuse~: ce n'est pas l'option \texttt{-l} qui vous donnera la bonne piste, -mais \texttt{-L} à utiliser. +mais l'option \texttt{-L} qu'il faut utiliser. \subsection{Le reste} @@ -118,11 +118,9 @@ Ladspa, mais c'est quoi ? C'est l'acronyme de « Linux Audio Developers Simple Plugin API », ou, en français : « machin avancé ». - La commande \texttt{listplugins}, comme son nom l'indique, fournit -la liste de tous les plugins accessibles. - - +la liste de tous les plugins accessibles. Comment y acceder est +une question dont la réponse est laissée à votre bonne volonté. %------------------------------------------------------------------ @@ -131,7 +129,7 @@ la liste de tous les plugins accessibles. Sox est le « couteau suisse » des manipulateurs de données sonores. Sa documentation étant assez ésotérique, je vais -faire comme d'hab' : présenter des exemples. +faire comme d'hab' : présenter des exemples approximatifs. \subsection{Conversions} @@ -158,7 +156,9 @@ random.wav: random.dat Makefile \subsection{Génération} +\begin{verbatim} play -n synth sine 480 sine 620 remix 1-2 fade 0 0.5 delay 0.5 repeat 5 +\end{verbatim} \subsection{Traitements} diff --git a/chap/streaming.tex b/chap/streaming.tex index e1798f2..03d7e2b 100644 --- a/chap/streaming.tex +++ b/chap/streaming.tex @@ -2,7 +2,7 @@ % new 24 juillet 2014 - Mixart Myrys % \chapter{streaming} -\label{streaming} +\label{chap:streaming} \index{streaming} Avertissement : pour le moment\footnote{En juillet 2014}, nous diff --git a/main.tex b/main.tex index 9ca7270..7a9fa62 100644 --- a/main.tex +++ b/main.tex @@ -12,9 +12,8 @@ \makeindex -\setlength \parindent {1em} - -\setlength \parskip {0.200em} % XXX +\setlength \parindent {2em} +\setlength \parskip {0.256em} % XXX %------ reglages des 'listings' \lstset{frame=single} % dessin d'un cadre autour du listing @@ -50,7 +49,8 @@ réécriture avec Mousepad et \LaTeX{} selon la méthode éprouvée dite de «~La~Rache~»\index{rache}, essentiellement sur une machine Debian/amd64, avec des -morceaux de Fedora Server 33 à coté\index{Fedora}. +morceaux de Fedora\index{Fedora} Server 33 juste là, à coté, +vers la page \pageref{chap:Fedora}. \vspace{5em} @@ -76,6 +76,7 @@ Your mileage may vary\dots \input{chap/backups} % \input{chap/processing} \input{chap/video} +\input{chap/graphisme} \input{chap/gnuplot} \input{chap/webcam} % \input{chap/SCSI}