Script de mise à jour de Chromium pour Mac OS X version 2011.10.01

Encore une nouvelle version, j’avais fait une erreur dans la version précédente et le script ne fonctionnait que dans certains cas. Je réfléchis aussi à une nouvelle façon de faire pour publier les mises à jour.

# !/bin/sh
# Créé par Alexis Greppo
# Site : https://www.zen-tech.info
 
 
function get_sys_version {
 
	# On récupère la version installée actuellement
 
	if [ -f "/Applications/Chromium.app/Contents/Info.plist" ];then
		SYS_VERSION=`defaults read /Applications/Chromium.app/Contents/Info SVNRevision`
	else
		SYS_VERSION=0
	fi
 
	echo "Version installee $SYS_VERSION"
 
}
 
function get_svn_version {
	# On récupère le numéro de la dernière révision disponible sur le SVN 
	SVN_REVISION=`curl -s http://commondatastorage.googleapis.com/chromium-browser-snapshots/Mac/LAST_CHANGE`
	echo "Version SVN $SVN_REVISION"
}
 
function install_chromium {
 
	cd /tmp
 
	# Téléchargement de la nouvelle version
 
	curl -L -O "http://commondatastorage.googleapis.com/chromium-browser-snapshots/Mac/$1/chrome-mac.zip"
 
	if [ $? -eq 0 ];then
		unzip -q ./chrome-mac.zip
	fi
 
	echo "Installation de l'application"
 
	if [ -f "/Applications/Chromium.app/Contents/Info.plist" ];then
		mv /Applications/Chromium.app /Applications/Chromium_old.app
	fi
 
	cp -R ./chrome-mac/Chromium.app /Applications/
 
	if [ $? -eq 0 ];then
		if [ -f "/Applications/Chromium_old.app/Contents/Info.plist" ];then
			rm -r /Applications/Chromium_old.app
		fi
	else
		mv /Applications/Chromium_old.app /Applications/Chromium.app
	fi
 
	echo "Suppression des fichiers temporaires"
	rm -r ./chrome-mac
	rm chrome-mac.zip
 
}
 
# On recupere la version installee et la version en ligne
get_sys_version
get_svn_version
 
if [ $SYS_VERSION -lt $SVN_REVISION ];then
 
	ps aux | grep /Applications/Chromium.app/Contents/MacOS/Chromium | grep -v grep
	# 1 si pas de ligne trouvée
	# 0 si chromium lancé
	# echo $?
 
	if [ $? -eq 1 ];then
		install_chromium $SVN_REVISION
	else
		echo "Vous devez fermer Chromium avant de lancer la mise à jour"
	fi
 
else 
	echo "Pas de mise à jour disponible"
fi

Vous pouvez télécharger mon script de mise à jour chromium_up.sh, pour l’utiliser vous devrez enlever ‘.txt’ à la fin du nom du fichier (c’est pas vraiment obligatoire…) puis faire un chmod u+x dessus.

chmod u+x ./chromium_up.sh

14 commentaires

  1. Bonsoir,
    Je viens d’essayer le script et effectivement, il marche très bien : merci. Cependant sur quelques heures d’utilisation, il m’a déjà fait 3 ou 4 mises à jours. Je souhaiterais donc modifier quelque peu le script pour ne plus utiliser les daily channel mais plutôt les dev ou beta channel. Auriez-vous les adresses des dépôts car le site chromium.org me redirige invariablement vers des téléchargements d’applis Google Chrome, que j’ai fui pour Chromium. D’ores et déjà merci.

  2. Ok. C’est probablement moi qui suis dans l’erreur alors. Merci beaucoup pour la réponse rapide et encore pour le script.

  3. L’adresse du dépôt semble avoir à nouveau changé 🙁 Mais pas moyen de mettre la main sur la nouvelle adresse. Est-ce que quelqu’un a une piste?

    C’est vraiment dommage, le script est juste génial!

    1. Désolé, j’ai un peu oublié de tester à nouveau… Je viens de le faire à l’instant, et une nouvelle erreur est apparue, il m’indique:

      2012-08-27 15:29:42.058 defaults[23728:903]
      The domain/default pair of (/Applications/Chromium.app/Contents/Info, SVNRevision) does not exist
      Version installee
      Version SVN 153463

      J’avais utilisé l’adresse d’un autre dépôt (https://commondatastorage.googleapis.com/chromium-browser-continuous/Mac/) pour faire les mises à jour depuis mon dernier message, mais depuis hier, il semble que la structure de l’app ait changé et que le numéro SVN ne soit plus stocké au même endroit, non?

    2. Exact, je viens de faire le test à l’instant et j’ai la même erreur.

      J’ai corrigé rapidement le script, tu pourras le trouver à l’adresse sur GitHub.

      Je ferais un article dans le journée pour annoncer la mise à jour.

    3. Merci pour la correction si rapide! C’est vraiment sympa de ta part!

      J’ai testé à l’instant le script, et il semble fonctionner, malgré un message me disant

      012-08-27 16:01:49.926 defaults[24178:903]
      The domain/default pair of (/Applications/Chromium.app/Contents/Info, SVNRevision) does not exist
      Version installee 153166
      Version SVN 153470

      au début de l’exécution, mais ensuite, le téléchargement et l’installation se passent sans problème… Mystère! 🙂

    4. Pour le message, c’est normal, j’ai laissé un test sur l’ancienne variable au cas où certaines personnes n’auraient pas mis à jour Chromium depuis un moment.

      Il faut juste que je trouve le moyen de ne pas afficher l’erreur ;).

    5. Ok, je vois!

      Merci en tout cas! C’est tellement pratique comme script! Je suis vraiment fan du terminal pour de telles choses!

Répondre à Gaetan Annuler la réponse

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.