mardi, mars 17, 2009

Modifier la fenêtre de l'écran de loggin de mac OSX



MAJ => tuto mis à jour ICI



Le tutoriel qui suit a été réalisé sous Léopard ... à vérifier sous Tiger.

Cette manipulation est à vos risques et périls, j’ai moi-même réussi a planté mon mac.
Avant toute chose sauvegardez vos données, en effet lors d'une fausse manip ou d'un bug l’écran de login ne seras plus accessible et il vous faudra redémarrer le machine en mode ligne de commande pour restaurer les fichiers.
J'en ai moi même fait l'expérience ...

Lorsque l'on parle de modification de l'aspect de la page de loggin de Mac OS on parle généralement de la modification du fond d'écran. Certains logiciels permettent de le faire facilement. Où l'on peu le faire en écrasant ce fichier :

/System/Library/CoreServices/DefaultDesktop.jpg

Je le met ici à titre de rappel, car ici ce que je vais vous montrer permet de modifier l'aspect de la fenêtre elle même.

Je me suis posé la question car je trouvais que cette fenêtre occupait trop d'espace.

Comme toute application mac qui ce respecte l'affichage est géré par un fichier NIB. Vous l'aurez donc compris tout repose sur la modification de celui-ci.

Ce fichier est répliqué, en effet il en existe un pour chaque langue.
Mon écran de loggin étant paramétré en Anglais j'ai donc modifié ce fichier avec "InterfaceBuilder" =>

/System/Library/CoreServices/SecurityAgentPlugins/loginwindow.bundle/Contents/Resources/English.lproj/LoginWindowUI.nib/keyedobjects.nib


Commencer par copier "LoginWindowUI.nib" sur votre bureau avec une commande du style

sudo cp -rf /System/Library/CoreServices/SecurityAgentPlugins/loginwindow.bundle/Contents/Resources/English.lproj/LoginWindowUI.nib ~/Desktop


Le projet à éditer avec interface builder est "LoginWindowUI.nib" mais celui-ci est en fait un paquet contenant plusieurs fichiers, dont un seul utile:

keyedobjects.nib

Si le paquet en question ne comporte qu’un seul fichier (keyedobjects.nib) alors une erreur ce présente:


The document "LoginWindowUI.nib" could not be opened. Interface Builder cannot open compiled nibs.


Pour contourner ce problème créer une NIB a partir d'un template, enregistrer celle-ci, explorer son contenus et enfin copier les 2 fichiers "clases.nib" et "info.nib" dans notre "English.lproj" ou télécharger une archive ici contenant ces 2 fichiers.

English.lproj est maintenant éditable avec Interface Builder.

Vous pouvez procéder aux modifications que vous voulez. Pour modifier les images des boutons et la pomme modifier les images dans /System/Library/CoreServices/SecurityAgentPlugins/loginwindow.bundle/Contents/Resources

Vous pouvez changer la position des images et ainsi de suite dans la NIB.
Faites en sorte de rester timoré sur les modification de la NIB, si la taille de la fenêtre est trop petite le système plante et vous êtes obligé de restauré les fichiers d’origine avec un autre mac ou en mode mono utilisateur.

quelques photos :=>








L'écran de loggin par défaut dans interface builder



Mon écran de loggin dans interface builder

lundi, mars 09, 2009

activer le mode debugger du dashboard

le mode debugger du dashboard vous permet d'avoir les widgets sur votre bureau sans avoir a basculer sur le dashboard

tapez dans un terminal:
defaults write com.apple.dashboard devmode YES

Un fois le mode activé, allez dans Dashboard (F12 par défaut), cliquez sur le widget en restant appuyé dessus, puis rappuyez sur F12. Le widget est toujours sous votre pointeur et vous pouvez la placer où bon vous semble.

jeudi, mars 05, 2009

tip: Executer du php dans un terminal

Tout simplement faire la commande php suivit de votre code ou de l'emplacement de votre fichier php.

ex:
php /Users/adrien/Desktop/test.php

Le résultat est bien entendu affiché dans le terminal

Mettre à jour ca base de données "locate" a jour

Pour utiliser la commande UNIX locate il faut avoir une base de donnée des fichiers de son mac.
la commande pour générer celle-ci est:

sudo /usr/libexec/locate.updatedb

Pour des raisons de sécurité il ne faudrait pas faire tourner la commande en sudo car celle-ci liste tout les fichier du mac (y compris root) de listé dans une bdd. Car celle-ci est en effet commune a touts les acomptes de votre mac et un autre utilisateur que vous ou un utilisateur ß loggué a partir d'un compte ne nécéssitant pas de passwd y aurais accès. Mais dans le cadre d'une utilisation mono utilisateur il n'y a pas trop de risque.

D'où le message de mise en garde lors de l'execution de la commande
>>> WARNING
>>> Executing updatedb as root. This WILL reveal all filenames
>>> on your machine to all login users, which is a security risk.

Mais si vous ne la faites pas en sudo voici ce qui ce produit
/usr/libexec/locate.updatedb: line 89: /var/db/locate.database: Permission denied

Du coup aucune base n'est généré et retour au point de départ

mardi, janvier 06, 2009

Certifié Apple-Geek ^^

Un petit test sur un site de geek m'a confirmé que j'étais un troll de la pomme ^^
pas trop de surprise, mais un bon score de 71% pur geek.
Difficile de faire plus, je ne suis pas du genre à salir le clavier de mon mac avec les reliefs de mon repas xD.

dimanche, décembre 28, 2008

Teamspeak2.0 sous mac : la sollution ultime ...

TeamSpeak sous Mac OS ? les possibilités ...

Petite parenthèse sur parallels 4.0 et l'intégration de windows a macos

J'ai en effet été surpris. Dans un premier temps ils ont comblé le retard pris sur le concurrent (vmware) mais ils ont même ajouté certains points sympathiques comme pouvoir afficher les éléments du systray de windows dans la barre de macosX.

C'est intéressant pour teamspeak 2.0 dans la mesure ou TeamspeeX (le client non officiel pour macOS) est émulé (Rosetta) , et plante assez souvent. Enfin pas de son lors de l'arrivée d'un utilisateur et j'en passe ...

La solution gratuite consiste à faire tourner la version Windows de Teamspeak via Wine (Wine Is Not an Emulator ...) donc pas d'émulation est les mêmes fonctionnalités que sous windows ...

Mais la le soucis viens de l'intégration macos/x11/wine ...
en effet sous linux même avec wine l'icone du systray de TS apparais dans le bureau Gnome, sous mac une fenêtre nommé "wine System Tray" apparais et ce révèle très peu fonctionnelle à l'utilisation. (Bon la je cherche la petite bête, car ca marche déjà très bien ...)





Mais pour ceux que cella peut gêner parallels peut s'avérer intéressant bien que payant. Ici le souci vient du fait que démarrer toute une Vm pour seulement temaspeak est un peu useless mais bon ...

Voila ce que ca donne :



Bon les alertes de sécurité windows sous mac c pas sérieux mais bon ... ^^




Pour la mise en place de TS sous wine :

1.
Télécharger et installer MacPorts.

puis :
commande "port install wine" dans un terminal ou ...
Pour les flémards installer Porticus (gestion graphique des logiciels ..) faire une recherche a wine et lancer l'installation.
(wine ce compile alors c'est long mais pas de panique ^^)

2.
Télécharger TeamspeakRC2 windows.

Dans une terminal : "wine dossierdedldets/TeamSpeakInstall.exe"
suivant suivant ... enfin bon l'install comme sur un pc ...

Enfin pour le lancer "wine ~/.wine/drive_c/Program\ Files/Teamspeak2_RC2"/TeamSpeak.exe"
Bien sur si pendant l'install de TS vous avez choisis c:/Program Files/Teamspeak2_RC2

U're ready to go now ^^

vendredi, décembre 26, 2008

cron: plannifier une tache

Il y a de bien nombreuses manières de planifier une tache sous mac osX (script, lancement d'application ... ) .

Depuis l'apparition de LaunchD, le démon prenant en charge le lancement de toutes les applis mac gère aussi les taches planifiées, l'utilitaire CRON existe toujours mais est déprécié par apple. Il est donc préférable d'utiliser lanchd bien que cron ait été gardé.
(osX ne possède pas de dossiers rc0 ... comme on pourrais le rencontrer sous Ubuntu par exemple tout est géré par launchd)

Ici nous ne verrons pas comment créer un fichier .plist et configurer lanchd mais nous allons passer par cron.

En effet pour tout professionnel de l'environnement UNIX cron est une référence.
Pour le configurer nombres de tutoriels sont présents sur la toile donc nous ne le verront pas non plus ^^
Mais pour les admins flémards voulant créer une configuration CRON a coup sur sans risquer de ce tromper il existe un petit logiciel graphique très pratique : CronniX.

Vous trouverez le DMG avec l’aide de l’ami google mais je vous recommande de l’installer via macports (et si le terminal vous rebute installez donc porticus)

Note pour les linuxiens en herbe ^^ =>
(macport est un genre de "aptitude" ou de "yum" … a la différence que celui-ci va compiler a partir des sources (donc un fonctionnement plus a la gentoo …))

De cette manière si vous possédez déjà des applis installé par ce biais tout ce met a jour en même temps (waouh c’est beaux la technologie ☺ )
Si macport ne vous intéresse pas et que vous avez la flemme de demander a google essayez ceci