8.35. Bash-5.2.21

Le paquet Bash contient le Bourne-Again Shell.

Temps de construction approximatif: 1,2 SBU
Espace disque requis: 52 Mo

8.35.1. Installation de Bash

Tout d'abord, corrigez des problèmes identifiés en amont :

patch -Np1 -i ../bash-5.2.21-upstream_fixes-1.patch

Préparez la compilation de Bash :

./configure --prefix=/usr             \
            --without-bash-malloc     \
            --with-installed-readline \
            --docdir=/usr/share/doc/bash-5.2.21

Voici la signification de la nouvelle option de configuration :

--with-installed-readline

Cette option indique à Bash d'utiliser la bibliothèque readline déjà installée sur le système plutôt que d'utiliser sa propre version de readline.

Compilez le paquet :

make

Passez à la partie « Installez le paquet » si vous n'exécutez pas la suite de test.

Pour préparer les tests, assurez-vous que l'utilisateur tester peut écrire dans l'arborescence des sources :

chown -R tester .

La suite de tests de ce paquet est conçue pour être lancée en tant qu'utilisateur non-root qui possède le terminal connecté à l'entrée standard. Pour satisfaire ce prérequis, démarrez un nouveau pseudo-terminal avec Expect et lancez les tests en tant qu'utilisateur tester :

su -s /usr/bin/expect tester << "EOF"
set timeout -1
spawn make tests
expect eof
lassign [wait] _ _ _ value
exit $value
EOF

La suite de tests utilise diff pour détecter les différences entre la sortie des scripts de test et la sortie attendue. Toute sortie de diff (préfixée par < et >) indique un échec du test, à moins qu'un message disant que la différence est ignorée n'apparaisse. Un test nommé run-builtins est connu pour échouer sur certaines distributions hôtes avec une différence sur la première ligne de la sortie.

Installez le paquet :

make install

Lancez le programme bash nouvellement compilé (en remplaçant celui en cours d'exécution) :

exec /usr/bin/bash --login

8.35.2. Contenu de Bash

Programmes installés: bash, bashbug et sh (lien vers bash)
Répertoire installé: /usr/include/bash, /usr/lib/bash et /usr/share/doc/bash-5.2.21

Descriptions courtes

bash

Un interpréteur de commandes largement utilisé ; il réalise un grand nombre d'expansions et de substitutions sur une ligne de commande donnée avant de l'exécuter, ce qui fait de cet interpréteur un outil très puissant

bashbug

Un script shell qui aide l'utilisateur à composer et à envoyer des courriers électroniques contenant des rapports de bogues formatés concernant bash

sh

Un lien symbolique vers le programme bash ; à son appel en tant que sh, bash essaie de copier le comportement initial des versions historiques de sh aussi fidèlement que possible, tout en se conformant aussi au standard POSIX