Category Archives: fr

décollage dans 3, 2, 1….

Aurevoir Tonton Christian

Voilà, demain je décolle pour Shanghai, début une vadrouille globe trotteresque.

J’espérais passer un peu de temps en famille mais les évènements étaient contre l’idée.

L’impressionnant malaise de ma mère – sous mes yeux médusés – m’aura confirmé, s’il était encore nécessaire, qu’on peut disparaitre du grand jeu de la vie en 30 secondes sans antécédent annonceurs.

Je compte bien partir en quête de la meilleure façon de jouer ce jeu.

Après 10 ans à Paris, je sais ce que je ne veux pas : metro/boulot/dodo, passer à côté des amis et de la famille à cause de tous les « on doit »… il est vrai que ma vie était remplie d’obligations sans vraiment savoir à qui profitait toute mon application à m’y soumettre.

Un voyage par an ne me suffisait plus, j’ai profité de la vente de mon appartement pour vendre, donner ou jeter tout ce qu’il contenait. Ma nouvelle maison devait contenir dans mon sac à dos.

Alors voilà, tout est parti de 4 invitations simultanées à rejoindre des amis vivant en Chine, Argentine, Australie et USA. Sans oublier les invitations permanentes chez mes amis d’autres pays. J’ai décidé de toutes les accepter. Le but n’étant pas un tour du monde pour collectionner les pays, mais plutôt de profiter de la liberté temporaire que je m’offre.

Donc cette vadrouille internationale durera entre 6 mois et une vie… voir au-delà. Le schéma générale est vague et libre, il est sujet aux différents petits jobs (informatiques ou autre).

Dans un premier temps je passe 1 mois en Chine, puis dans l’ordre j’ai tout de même une idée générale des premiers mois. Je me rendrai en Thailande, Australie, Nouvelle Zélande puis Argentine. En ajoutant par ci par là des étapes intermédiaires (je pense à Bali ou la Nouvelle Calédonie).

J’espère remonter l’Amérique latine le plus lentement possible pour savourer ses pays.

Je tiens à vous tous, et j’espère que cette liberté me permettra de passer du temps avec chacun d’entre vous sans avoir une pendule sonnant les secondes me restant avant mon retour aux « obligations » de la vie que je m’étais choisie.

A bientôt !

Partage d’écran activé via le Terminal

Nous souhaitons activer le contrôle d’écran à distance sur un Mac OS X grace à la ligne de commande

sur Leopard :
$ echo -n enabled > /Library/Preferences/com.apple.ScreenSharing.launchd

sur Snow Leopard Mac OS 10.6 :
$ echo -n enabled > /private/etc/ScreenSharing.launchd

sur Lion Mac OS 10.7 :
$ sudo /bin/launchctl load -w /System/Library/LaunchDaemons/com.apple.screensharing.plist

Pour le désactiver :

sur Leopard
$ rm /Library/Preferences/com.apple.ScreenSharing.launchd

sur Snow Leopard 10.6 :
$ rm /private/etc/ScreenSharing.launchd

sur Lion 10.7 :
$ sudo /bin/launchctl unload -w /System/Library/LaunchDaemons/com.apple.screensharing.plist

exporter iPhoto dans des dossiers

iPhoto est bien sympa mais il a des limites, à commencer par le fait qu’il n’exporte pas dans des dossiers. Si on utilise les outils d’exportation on se retrouve avec toutes les photos dans un seul dossier !

grace aux commentaires sur cette page j’ai utilisé le script python suivant qui a fonctionné sur ma configuration :

  • Mac OS 10.6.3 (Snow Leopard), avec le python intégré
  • iPhoto 8.1.2

Je l’ai enregistré dans un fichier nommé “export-iphoto.py” dans le dossier “documents” de l’utilisateur “chris”, puis en lançant le terminal pour l’executer (en réalité je crois qu’on peut se contenter de double cliquer dessus, mais j’aime bien le mode ligne de commande 🙂 ) :

cd /Users/chris/Documents
python export-iphoto.py

Voici le contenu du fichier export-iphoto où il faut bien prendre soint de changer ces 2 lignes
albumDataXml="/Users/YOURUSERNAME/Pictures/iPhoto Library/AlbumData.xml"
targetDir="/Volumes/share/pictures"

export-iphoto.py :

from xml.dom.minidom import parse, parseString, Node
import os, time, stat, shutil, sys

def findChildElementsByName(parent, name):
result = []
for child in parent.childNodes:
if child.nodeName == name:
result.append(child)
return result

def getElementText(element):
if element is None: return None
if len(element.childNodes) == 0: return None
else: return element.childNodes[0].nodeValue

def getValueElementForKey(parent, keyName):
for key in findChildElementsByName(parent, "key"):
if getElementText(key) == keyName:
sib = key.nextSibling
while(sib is not None and sib.nodeType != Node.ELEMENT_NODE):
sib = sib.nextSibling
return sib

albumDataXml="/Users/chris/Pictures/iPhoto Library/AlbumData.xml"
targetDir="/Volumes/FAT/pictures"
copyImg=True #set to false to run with out copying files or creating directories

print "Parsing AlbumData.xml"
albumDataDom = parse(albumDataXml)
topElement = albumDataDom.documentElement
topMostDict = topElement.getElementsByTagName('dict')[0]
listOfRollsArray = getValueElementForKey(topMostDict, "List of Rolls")
masterImageListDict = getValueElementForKey(topMostDict, "Master Image List")

#walk through all the rolls (events)
for rollDict in findChildElementsByName(listOfRollsArray, 'dict'):
rollName = getElementText(getValueElementForKey(rollDict, "RollName"))
print "\n\nProcessing Roll: %s" % (rollName)

#walk through all the images in this roll/event
imageIdArray = getValueElementForKey(rollDict, "KeyList")
for imageIdElement in findChildElementsByName(imageIdArray, 'string'):
imageId = getElementText(imageIdElement)
imageDict = getValueElementForKey(masterImageListDict, imageId)
modifiedFilePath = getElementText(getValueElementForKey(imageDict, "ImagePath"))
originalFilePath = getElementText(getValueElementForKey(imageDict, "OriginalPath"))

sourceImageFilePath = modifiedFilePath

modifiedStat = os.stat(sourceImageFilePath)
basename = os.path.basename(sourceImageFilePath)
year = str(time.gmtime(modifiedStat[stat.ST_CTIME])[0])
targetFileDir = targetDir + "/" + year + "/" + rollName

if not os.path.exists(targetFileDir):
print "Directory did not exist - Creating: %s" % targetFileDir
if copyImg:
os.makedirs(targetFileDir)

targetFilePath = targetFileDir + "/" + basename
iPhotoFileIsNewer = False

if os.path.exists(targetFilePath):
targetStat = os.stat(targetFilePath)

#print "modified: %d %d" % (modifiedStat[stat.ST_MTIME], modifiedStat[stat.ST_SIZE])
#print "target : %d %d" % (targetStat[stat.ST_MTIME], targetStat[stat.ST_SIZE])

#why oh why is modified time not getting copied over exactly the same?
if abs(targetStat[stat.ST_MTIME] - modifiedStat[stat.ST_MTIME]) > 10 or targetStat[stat.ST_SIZE] != modifiedStat[stat.ST_SIZE]:
iPhotoFileIsNewer = True
else:
iPhotoFileIsNewer = True

if iPhotoFileIsNewer:
msg = "copy from:%s to:%s" % (sourceImageFilePath, targetFilePath)
if copyImg:
print msg
shutil.copy2(sourceImageFilePath, targetFilePath)
else:
print "test - %s" % (msg)
else:
sys.stdout.write(".")
sys.stdout.flush()

albumDataDom.unlink()

Mac OS 10.5 & 10.6 : accent manquant dans Helvetica et Helvetica Neue

Sur Leopard et Snow Leopard, les polices systèmes sont restaurées dès qu’on essai de les supprimer.

Ainsi il est sacrément embattant de remplacer les polices Helvetica et Helvetica Neue qui ont pourtant le défaut majeur de ne pas intégrer les accents Français lorsqu’on exporte au format PDF à partir d’Adobe InDesigne, Photoshop, Illustrator…

J’ai trouvé sur la doc fournie par Extensis Universal Type Client (version réseau de Suitecase) une procédure permettant de les supprimer afin de pouvoir enfin les gérer via notre logiciel de gestion des polices :

  1. Ouvrir une session où l’utilisateur est Administrateur sur le Mac concerné
  2. Ouvrir le livre des polices
  3. Choisir “Livre des polices” > “Préférences
  4. Désactiver “M’avertir si les polices système changent
  5. Copier le dossier suivant vers un endroit où il sera en sécurité :
    /System/Bibliothèque/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.Framework/Versions/A/Resources/ProtectedFonts
    note : ne jamais supprimer votre copie de sauvegarde du dossier “ProtectedFonts“, pour le cas où vous auriez besoin de ces polices dans le futur
  6. Ouvrir le dossier ProtectedFonts original et y supprimer Helvetica et HelveticaNeue
  7. Entrer un login administrateur lorsqu’il le demande
  8. Ouvrir /System/Bibliothèque/Fonts et y supprimer Helvetica et HelveticaNeue
  9. Ouvrir votre gestionnaire de police (Extensis dans notre cas) et activer EN PERMANENCE vos versions d’Helvetica et Helvetica Neue
  10. Redémarrer votre ordinateur

extensis_helvetica

Explications : le contenu du dossier ProtectedFonts de Leopard et Snow Leopard assure que les polices qui s’y trouvent ne soient jamais supprimé du dossier /System/Library/Fonts . En effet il les restaure aussi vite qu’on essai de les supprimer. Ayant rencontré plusieurs Mac inutilisable après l’effacement de polices du système avant la version 10.5, je suis très content qu’une telle sécurité empêche les graphistes de faire du ménage eux-même.

Malheureusement, il vaudra tout de même qu’une police Helvetica et Helvetica Neue soit toujours disponible (grâce au gestionnaire de police utilisé), sinon le fonctionnement du système n’est pas assuré

Mac OS X : comment ajouter manuellement une imprimante Windows partagée

Ajouter une imprimante Windows sur Mac est très simple quand on peut parcourir les workgroup. Mais lorsque le listage ne fonctionne pas pour quelque raison que ce soit… on est bien embêtée !

Il existe en fait un bouton “Options avancée…” que l’on peut ajouter dans la barre de menu qui permet d’accomplir un ajout manuel. Tout est très bien expliqué sur le site du support d’apple

Mac OS X v10.5 ou ultérieur

  1. Choisissez Préférences Système à partir du menu Apple.
  2. Choisissez Imprimante & Fax à partir du menu Présentation.
  3. Cliquez sur le bouton + pour ajouter une imprimante.
  4. Appuyez sur la touche Contrôle tout en cliquant sur l’icône « Par défaut » (ou toute autre icône de la barre d’outils), puis choisissez Personnaliser la barre d’outils à partir du menu contextuel qui apparaît.
  5. Faites glisser l’icône Options avancées (l’engrenage) dans la barre d’outils.
  6. Cliquez sur Terminé.
  7. Cliquez sur l’icône Options avancées, ajoutée à la barre d’outils.
  8. Choisissez Windows dans le menu contextuel Type.
  9. Dans le champ URL, saisissez l’adresse de l’imprimante suivant l’un des formats ci-dessous :smb://groupe_de_travail/serveur/nom_de_partage
    smb://serveur/nom_de_partage/

printer

printer2

Copier un profile utilisateur sous Windows 7

Vous aviez l’habitude de créer des profils par défaut sur Windows ? vous allez voir une mauvaise surprise sur Windows Seven : le bouton “Copier dans…” est grisé !

J’ai trouvé comment le réactiver grâce à cette page : http://www.yamprod.net/index.php?post/2009/11/09/Copier-un-profil-utilisateur-sous-Windows-7

 Il existe un petit utilitaire nommé “Windows Enabler” qui va vous permettre d’activer le bouton  “Copier dans…”

 le fichier d’install windows_enabler copié sur mon blog

Note Octobre 2011: ce petit programme ne semble pas fonctionner aujourd’hui sur un Windows 7 Familial avec toutes les mises à jour

inviter à l'élévation windows 7 familiale

Pour installer le touchpad toshiba sur un Windows 7 Familial (Windows Seven Home), j’avais le message m’invitant à aller dans la stratégie de sécurité locale pour permettre l’affichage d’ inviter à l’élévation lors de la détection d’une installation.

secpol.exe (l’utilitaire de configuration de la stratégie de sécurité local) n’existant pas sur les versions Familiale, il faut aller activer ce genre d’option dans la base de registre. Dans notre cas, il faut passer à “1” le DWORD suivant :

HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\System\EnableInstallerDetection

Bolivia coming soon…

bolivia

Il va bien falloir que je pense à raconter ici mon voyage en Bolivie, aller je m’engage sinon je reporterais sans fin !

C’est vraiment le pays le plus bluffant que j’aurais découvert.

rando

Et puis il faudra bien que je vous raconte comme j’ai moi même été sous le charme de ma propre région catalane quand je l’ai faite visiter à mes amis Parisiens. Grandir dans un endroit aussi sympa, ça n’a pas de prix

Déplacer Bibliothèque iTunes

Dans les préférences d’iTunes on peut changer l’emplacement où sont stockés les “medias”. Mais finalement ça ne déplace pas l’emplacement où sont stockées les applications ou les sauvegardes de l’iphone.

Si comme nous votre dossier “Mes documents” est limité en espace, cela pose un gros soucis.

L’astruce trouvée ici consiste à :

  • D’abord, fermez iTunes.
  • Ensuite faites votre plus beau couper / coller du dossier iTunes (celui de la bibliothèque pas le programme hein ) vers l’emplacement de votre choix, pour moi une autre partition.
  • Lancer iTunes depuis l’exécutable tout en maintenant SHIFT gauche enfoncé.

Chez nous c’est le dossier Mes Documents\Musique\itunes  au complet que nous avons déplacé vers c:\itunes puis dans les préférences d’itunes nous avons indiqués que les “Médias” doivent être stockés dans c:\itunes\itunes media

VPN Microsoft via Netasq

En ces jours où la grippe A se répend, nous avons changé de système VPN afin de l’installer plus facilement chez tout un chacun.

Ca sera du PPTP avec le login de l’AD à présent, c’est tout de même plus facile et ça fonctionne avec tous les systèmes. Même si sur Mac j’ai du cocher la case “envoyer tout le trafic sur la connexion VPN” dans les options avancées afin que ça fonctionne enfin sur notre serveur VPN en windows 2003, et pas sur le serveur VPN en windows 2008, allez savoir pourquoi.

Ma partie du travail n’a concerné que les reglages des firewalls et les tests sur différents clients, et les Netasq n’ont vraiment pas été faciles sur ce coup là. Un Netasq F60 et un F200, les 2 ont eu le même soucis : ça ne passe pas à l’authentification si on ne fait du nat que sur PPTP.

Après avoir tout essayé, une seule solution :

  1. faire du MAP BIDIRECTIONNEL
  2. faire tout le filtre au niveau des règles de filtrage ou je n’ai autorisé que le port PPTP et le protocol GRE.