Vieux motard que j’aimais… Je découvre enfin la puissance des scripts Bash ;)

Désolé pour la très mauvaise contrepèterie, mais cela remonte à l’époque où je lisais un certain « Amstrad 100 pour 100″… Bref. Ce matin, après avoir tapé pour la 10 000ième fois environ la ligne de commande suivante :

tar xvfj *.tar.bz2 ; rm -f *.tar.bz2 ; cd mozilla ; make -f client.mk checkout ; cd .. ; tar cvfj moz-fox.tar.bz2 mozilla

qui permet la mise à jour du code source de mon Mozilla Firefox (version du tronc), j’ai décidé de voir si je pouvais – via un script bash – limiter cet ennuyeuse ligne de code.

Et j’ai réussi à pondre le code suivant, en m’entrainant avec une copie du code source de mon Mozilla Thunderbird :

#!/bin/bash

# Script qui effectue les opérations suivantes
# a) copie du code source vers le répertoire de travail
# b) mise à jour du code source
# c) on archive le source mis à jour.

# version développée pour Thunderbird, adaptable à Seamonkey et firefox
# en remplaçant les « mail » par des « fox » ou « suite »

# Rendu exécutable par un petit chmod u+x, et déplacé à la racine de
# mon répertoire utilisateur

# Etape a)

cd ~/sources
mv moz-mail.tar.bz2 ~/logs/mail/

# Etape b)

cd ~/logs/mail/
tar xvfj moz-mail.tar.bz2
rm -f moz-mail.tar.bz2
cd mozilla
make -f client.mk checkout
cd ..

# Etape c)

tar cvfj moz-mail.tar.bz2 mozilla/
mv moz-mail.tar.bz2 ~/sources

Je sais que ce n’est pas ultra optimisé, ni super bien codé, mais cela suffit largement à mes besoins de base. Maintenant, il ne me reste plus qu’à faire un script équivalent pour la compilation du code, et j’aurais quelque scripts qui me simplifieront un peu la vie et rallongeront la durée de vie de mon clavier 😉

Edition 23 septembre 9 h 30 :

Voici un prototype du code du script bash pour la compilation automatisée. Des spécialistes en Bash scripting pour me corriger les éventuelles erreurs ?

#!/bin/bash

# Script qui effectue les opérations suivantes
# a) Déplacement dans le répertoire de travail
# b) lancement de la compilation
# c) copie d’une version du logiciel compilée dans Applications et son installation
# d) copie d’une version du logiciel compilée dans Compils pour en garder une archive

# version développée pour Thunderbird, adaptable à Seamonkey et firefox
# en remplaçant les « mail » par des « fox » ou « suite »

# Rendu exécutable par un petit chmod u+x, et déplacé à la racine de
# mon répertoire utilisateur

# On prend comme prérequis que le code est déjà présent.

cd ~/logs/mail/mozilla

make -f client.mk
make -C mail/installer

# à remplacer par make -C xpinstall/packager si compilation en mode dynamique
# on utilise *.tar.bz2 => nom complet pouvant changer, simple sécurité

cd dist/
cp *.tar.bz2 ~/Applications
cp *.tar.bz2 ~/compils

# maintenant la partie dangereuse.

cd ~/Applications
rm -rf /thunderbird # effaçage de l’ancienne version
tar xvfj thun*.tar.bz2 # au cas où il y aurait d’autre archives en .tar.bz2
rm -f thun*.tar.bz2 # on a plus besoin de l’archive en .tar.bz2

cd ~ # histoire de quitter le répertoire Applications

Entre Giga et gibi-octet : pour les disques durs rétrecissent au formatage ?

C’est en farfouillant sur les forums d’ubuntu-fr.org, que je suis tombé sur les questions d’un utilisateur qui se plaignait d’avoir perdu 10 Go sur un disque dur. (http://forum.ubuntu-fr.org/viewtopic.php?id=63880)

C’est en lui répondant que j’ai été une nouvelle fois confronté à un problème assez courant : la différence de taille en un disque dur acheté et sa capacité réellement exploitable.

Si dans la vie courante, on considère avec raison que :

  • kilo = préfixe pour désigner un millier de quelque chose
  • méga = préfixe pour désigner un million de quelque chose
  • giga = préfixe pour désigner un milliard de quelque chose

C’est complètement faux en informatique. Et pour une simple raison.

Si l’homme compte en base 10 (en utilisant les chiffres de 0 à 9), l’informatique et l’ordinateur depuis sa conception ne connait que 2 valeurs : 0 et 1. En clair, soit le courant passe, soit il ne passe pas !

Donc, le kilo-octet, soit 2^10 octets ne vaut pas 1000, mais 1024 octets, soit 2,4% de plus.

De même, le méga-octet, soit 2^10 kilo-octets ne vaut pas 1 000 000 d’octets, mais 1 048 576, soit 4,8% de plus.

Enfin, pour le giga-octet, soit 2^10 méga-octets ne vaut pas 1 000 000 000 d’octets, mais 1 073 741 824, soit 7,3% de plus !

Continuer la lecture de « Entre Giga et gibi-octet : pour les disques durs rétrecissent au formatage ? »

Sortie des versions 1.5.0.7 de Firefox et Thunderbird.

Bien que le site officiel n’annonce toujours qu’une version 1.5.0.6 – à 16 h 24, les version 1.5.0.7 de Firefox et Thunderbird sont disponibles.

Pour télécharger Firefox (en fonction de votre langue et de la plateforme) : http://releases.mozilla.org/pub/mozilla.org/firefox/releases/1.5.0.7/

Idem pour Thunderbird : http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/1.5.0.7/

Les mises à jour automatisées seront activées sous peu. Je modifierais aussi l’article dès la disponibilité des notes de publications.

Édition au 17 septembre – 22 h 20 : la vie réelle ayant repris ses droits, voici les notes de publications (en anglais) pour Firefox 1.5.0.7 et pour Thunderbird 1.5.0.7

Et pour les anglophones, le lien vers les problèmes de sécurité corrigés, commun à Thunderbird et Firefox.