Désactiver la vérification automatique des mises à jour de NeoOffice

bubumac

Membre actif
5 Juin 2004
137
3
Tahiti
La vérification automatique des mises à jour de NeoOffice intervient en moyenne 2 fois par mois et peut être très ennuyeuse car elle freine, parfois pendant de longues minutes, le lancement de l'application.

Il est officiellement possible de désactiver cette fonctionnalité (voir cet article).

Dans les faits, il convient de procéder comme suit :

1/ Ouvrir le terminal et copier / copier la ligne de commande suivante :

sudo touch /Applications/NeoOffice.app/Contents/MacOS/.noshowdonationpage

2 / Appuyer sur entrée

3 / Entrer votre mot de passe et appuyer de nouveau sur entrée


Question : est-il possible de transformer cette ligne de commande en un script double-cliquable qui, au choix, créerait ou supprimerait ce fichier invisible ?
 
Bonjour

Ça tient en une ligne en AppleScript:

do shell script "sudo touch /Applications/NeoOffice.app/Contents/MacOS/.noshowdonationpage" with administrator privileges

Le mot de passe administrateur sera demandé dans une fenêtre.
 
Bonjour Pascal, et merci pour cette info.

Est-il possible de prévoir une fenêtre dans le script qui demande si l'on veut désactiver ou réactiver la vérification des mises à jour (si choix "désactiver" le script crée le petit fichier invisible ; si choix "réactiver", le script efface alors ce fichier, si présent dans le dossier /Applications/NeoOffice.app/Contents/MacOS/ ) ?
 
Si je ne me trompe pas , ça devrait donner:

Bloc de code:
set filePath to "/Applications/NeoOffice.app/Contents/MacOS/.noshowdonationpage"
if (exists filePath) then
	set question to "Voulez-vous réactiver la mise-à-jour automatique de NeoOffice ?"
	display dialog question buttons {"Oui", "Non"} default button "Non"
	if button returned of the result is equal to "Oui" then
		do shell script "sudo rm " & filePath with administrator privileges
	end if
else
	set question to "Voulez-vous désactiver la mise-à-jour automatique de NeoOffice ?"
	display dialog question buttons {"Oui", "Non"} default button "Non"
	if button returned of the result is equal to "Oui" then
		do shell script "sudo touch " & filePath with administrator privileges
	end if
end if
 
Le script est presque parfait ... mais le test sur (exists filePath) ne fonctionne pas chez moi.

Après quelques recherches sur le net, je propose la modification suivante :

Bloc de code:
set filePath to "/Applications/NeoOffice.app/Contents/MacOS/.noshowdonationpage"
set msg to "no"

tell application "Finder" to if exists filePath as POSIX file then set msg to "yes"

if (msg = "yes") then
	set question to "Voulez-vous réactiver la mise-à-jour automatique de NeoOffice ?"
	display dialog question buttons {"Oui", "Non"} default button "Non"
	if button returned of the result is equal to "Oui" then
		do shell script "sudo rm " & filePath with administrator privileges
	end if
else
	set question to "Voulez-vous désactiver la mise-à-jour automatique de NeoOffice ?"
	display dialog question buttons {"Oui", "Non"} default button "Non"
	if button returned of the result is equal to "Oui" then
		do shell script "sudo touch " & filePath with administrator privileges
	end if
end if

Ca a l'air de mieux fonctionner, mais ça retourne tout de même parfois des erreurs : peut être un pb de rafraîchissement du finder...
 
Comme le résultat semble assez aléatoire, j'en suis revenu aux bonnes vieilles méthodes. Ça donne ceci:
Bloc de code:
[COLOR="Blue"]set [COLOR="Green"]filePath[/COLOR] to [COLOR="Black"]"/Applications/NeoOffice.app/Contents/MacOS/.noshowdonationpage"[/COLOR]
set [COLOR="Green"]fileExists[/COLOR] to do shell script [COLOR="Black"]"if [ -e " &[/COLOR] [COLOR="Green"]filePath[/COLOR] [COLOR="Black"]& " ]; then echo yes; fi;"[/COLOR]
if ([COLOR="Green"]fileExists[/COLOR] is equal to [COLOR="Black"]"yes"[/COLOR]) then
	set [COLOR="Green"]question[/COLOR] to [COLOR="Black"]"Voulez-vous réactiver la mise-à-jour de NeoOffice ?"[/COLOR]
	display dialog [COLOR="Green"]question[/COLOR] buttons [COLOR="Black"]{"Oui", "Non"}[/COLOR] default button [COLOR="Black"]"Non"[/COLOR]
	if button returned of the result is equal to [COLOR="Black"]"Oui"[/COLOR] then
		do shell script [COLOR="Black"]"sudo rm " &[/COLOR] [COLOR="Green"]filePath[/COLOR] with administrator privileges
	end if
else
	set [COLOR="Green"]question[/COLOR] to [COLOR="Black"]"Voulez-vous désactiver la mise-à-jour de NeoOffice ?"[/COLOR]
	display dialog [COLOR="Green"]question[/COLOR] buttons [COLOR="Black"]{"Oui", "Non"}[/COLOR] default button [COLOR="Black"]"Non"[/COLOR]
	if button returned of the result is equal to [COLOR="Black"]"Oui"[/COLOR] then
		do shell script[COLOR="Black"] "sudo touch " &[/COLOR] [COLOR="Green"]filePath[/COLOR] with administrator privileges
	end if
end if[/COLOR]