Désactiver "Rouvrir Windows lors de la reconnexion" dans Mac OS X complètement

Vous avez peut-être remarqué que lorsque vous vous déconnectez ou redémarrez Mac OS X, vous obtenez une boîte de dialogue avec une case à cocher à côté de "Rouvrir Windows lors de la connexion" qui restaure toutes vos applications et fenêtres ouvertes.

Si vous ne l'aimez pas et que vous en avez assez de décocher la case pour ne plus rouvrir les fenêtres, vous pouvez utiliser un script tiers pour rendre la fonction inutile. Pour clarifier, ce que cela fait est de désactiver complètement la fonctionnalité sur une base constante, peu importe si cette case à cocher pour conserver Windows est cochée ou non, les fenêtres ne seront pas restaurer.

Bien que cela fasse partie de la fonction Resume d'OS X, cela est différent de la désactivation de l'application Resume complètement ou par application, car cela ne fait qu'effectuer les redémarrages et les déconnexions.

Désactiver "Rouvrir les fenêtres lors de la connexion" en le rendant inutilisable

Rappelez-vous, ce script désactive la fonctionnalité, mais la fenêtre de dialogue apparaît toujours. La différence est avec ce script, peu importe que la boîte de dialogue soit cochée ou non, les fenêtres et les applications ne seront pas restaurées . Ceci est destiné aux utilisateurs avancés qui sont à l'aise avec la ligne de commande, une syntaxe incorrecte peut entraîner des erreurs ou visiter la mauvaise URL afin d'être particulier sur ce que vous utilisez. Si vous n'êtes pas certain, ne continuez pas. Ceci est l'accès à un script à partir d'un site Web tiers, utilisez à vos risques et périls.

Collez le suivant dans une seule ligne dans le terminal et appuyez sur retour:

curl http://pastie.org/pastes/2427953 -L -s -o ~/fixlogin.sh

Ensuite, vérifiez le fichier pour être sûr que c'est ce que vous voulez qu'il contienne:

cat ~/fixlogin.sh

Si le fichier correspond au contenu du script ci-dessous, vous pouvez l'exécuter avec les éléments suivants:

chmod +x ~/fixlogin.sh && sudo ~/fixlogin.sh ; rm ~/fixlogin.sh

NOTE: si vous préférez créer votre propre fichier et ne pas utiliser curl pour télécharger le script "fixlogin.sh" d'un hôte distant appelé pastie, le fichier est celui-ci, vous pouvez coller ce qui suit dans un document appelé 'loginfix.sh', le rend exécutable avec chmod + x, et exécute le script manuellement:

#!/bin/bash
echo "#!/bin/bash" > /tmp/loginfix.sh
echo "rm /Users/*/Library/Preferences/ByHost/com.apple.loginwindow.*" >> /tmp/loginfix.sh
mv /tmp/loginfix.sh /usr/bin/loginfix.sh
chmod +x /usr/bin/loginfix.sh
defaults write com.apple.loginwindow LoginHook /usr/bin/loginfix.sh

Comme vous pouvez le voir, le script supprime tout dans le répertoire ~ / Library / Preferences / ByHost / correspondant à "com.apple.loginwindow. *"

(Le texte ci-dessus est intentionnellement petit pour qu'il puisse tenir sur une seule ligne)

Ensuite, exécutez-le avec la commande suivante:

chmod +x ~/fixlogin.sh && sudo ~/fixlogin.sh ; rm ~/fixlogin.sh

Cette commande télécharge un script, le place dans l'emplacement approprié, le rend exécutable, puis supprime le fichier temporaire. Si vous vous posez la question, le contenu du script bash téléchargé est le suivant:

#!/bin/bash
echo "#!/bin/bash" > /tmp/loginfix.sh
echo "rm /Users/*/Library/Preferences/ByHost/com.apple.loginwindow.*" >> /tmp/loginfix.sh
mv /tmp/loginfix.sh /usr/bin/loginfix.sh
chmod +x /usr/bin/loginfix.sh
defaults write com.apple.loginwindow LoginHook /usr/bin/loginfix.sh

Si vous souhaitez revenir au comportement par défaut de cette fonctionnalité OS X Lion, tapez simplement la commande d'écriture par défaut suivante:

sudo defaults delete com.apple.loginwindow LoginHook

Et vous serez de retour pour pouvoir sélectionner la restauration de la fenêtre en fonction du choix de cette case.

Ce petit script vient d'HexBrain, merci de l'avoir envoyé dans Mark!