Des scripts pour faciliter le reconditionnement de portables - retour accueil
git clone git://bebou.netlib.re/scripts-reco
Log | Files | Refs | README |
README (4066B)
1 # Scripts reconditionnement 2 3 Un ensemble de scripts facilitant l'évaluation de l'état d'un ordinateur. Ecrit 4 initiallement pour les besoins de [Commown](https://commown.coop). Inspiré du 5 travail de Louis, adapté en scripts shell plus simples et plus portables. 6 7 ## Arboresence 8 9 . 10 ├── bin # Un dossier contenant du code factorisé 11 │ └── common.sh 12 ├── create_keyboard_profile.sh # Un script permettant de créer les dispositions de claviers dans keyboard 13 ├── generic.sh # La suite de test la plus générique 14 ├── keyboard # Dossier contenant les dispositions des claviers 15 │ └── omen.kbd # Une disposition de clavier 16 ├── README # Ce fichier 17 └── tests # Les fichiers de test. Généralement des scripts. 18 ├── audio 19 ├── blue.png 20 ├── bluetooth 21 ... 22 23 ## Usage 24 25 Lancer une suite de tests : 26 27 $ ./omen.sh 28 29 Il est possible qu'il vous soit demandé en cours de route d'entrer le mot de 30 passe du compte root ou le votre si vous êtes sudoers. 31 32 ## Fonctionnement général 33 34 L'idée est d'avoir un ensemble de tests sous forme de scripts dans le dossier 35 `tests`. Ces tests peuvent être assemblés dans une suite de test qui aident au 36 reconditionnement d'un PC portable. Le début d'une suite de test instanciera 37 certaines variables et fonctions qui peuvent être utilisées dans les tests. 38 Ces variables et fonctions sont détaillées par la suite. 39 40 ## Dépendances 41 42 test | liste dépendances 43 -----|------------------ 44 tous | shell, awk, grep, sed, sort 45 rapport | dmidecode 46 écran | feh 47 webcam | ffmpeg 48 audio | aplay/arecord 49 wifi | iw 50 bluetooth | bluetoothctl (bluez) 51 clavier | fzy, xev, stdbuf 52 génération profil clavier | xev, stdbuf 53 54 Sous debian ces dépendances peuvent-être installées en faisant : 55 56 $ sudo apt install feh dmidecode ffmpeg alsa-utils iw xclip fzy 57 58 A noter que `ffmpeg` est un paquet très lourd. Il pourrait être intéressant de 59 le remplacer. 60 61 ## Ecrire un test 62 63 Un test est un script se trouvant dans le dossier `tests`. Il peut être 64 écrit dans le langage de son choix. Les variables et fonctions shell 65 disponibles pertinents lors d'un test lorsqu'il sera appelé dans une suite de 66 test sont : 67 68 Les variables 69 70 * `$tmpdir` - le chemin du dossier temporaire créé pour cette suite de test. 71 On peut y stocker des choses, pour le test en cours ou les suivants. 72 * `$model_name` - contient le nom du fichier de la suite de test en cours 73 moins son extension. Par exemple, si l'on lance `./omen.sh`, `$model_name` 74 contiendra `omen`. 75 76 Les fonctions 77 78 * `inform blabla` - Affiche un message informatif et invite à appuyer sur 79 entrée pour continuer. Typiquement utilisé en début de test pour préparer 80 l'opérateurice à ce qu'il va se passer. 81 82 ## Ecrire une suite de test 83 84 Une suite de test est un script constitué d'un ensemble ordonné de tests se 85 trouvant dans `tests`. Cette suite de test peut à priori se trouver n'importe 86 où. Elle **doit** commencer par : 87 88 #! /usr/bin/env ./common.sh 89 90 Qui en fait script exécuté par `common.sh`. C'est ce script qui prépare les 91 fonctions et variables importantes. On utilise ensuite la fonction 92 `launch_test` suivi du nom d'un test existant pour déclarer les tests qui 93 seront exécutés : 94 95 launch_test rapport 96 launch_test ecran 97 launch_test audio 98 launch_test webcam 99 launch_test wifi 100 launch_test bluetooth 101 102 On fini par la fonction affichant le rapport de fin : 103 104 end 105 106 ## Ecrire le profil d'un clavier 107 108 Pour faciliter les tests des claviers un script compagnon permet de facilement 109 inscrire dans un fichier la disposition du clavier d'un ordinateur. Pour cela 110 lancer 111 112 $ ./create_keyboard_profile.sh | tee keyboard/modele.kbd 113 114 Il suffit ensuite de taper chaque touche dans l'ordre de son choix. Si un 115 touche est répétée où si l'on faut une erreur il sera toujours possible 116 d'ouvrir le fichier texte généré et le corriger à la main.