Sam & Max » Max http://sametmax.com Du code, du cul Sat, 07 Nov 2015 10:56:13 +0000 en-US hourly 1 http://wordpress.org/?v=4.1 Multiboards Customizable – Le retour de la mort de la peur de mourir 18 http://sametmax.com/multiboards-customizable-le-retour-de-la-mort-de-la-peur-de-mourir/ http://sametmax.com/multiboards-customizable-le-retour-de-la-mort-de-la-peur-de-mourir/#comments Tue, 18 Aug 2015 11:46:48 +0000 http://sametmax.com/?p=16741 Pour ceux qui ont suivi la lamentable mais néanmoins poilante mise en prod de la nouvelle version buggée de MB j’ai du reporter un rendez-vous avec mon escort pour réparer le bébé.

Normalement ça devrait marcher (ça valait pas un post mais c’est pour remplir un peu plus les BAL des abonnés…)

Rendez-vous ici ou ou encore et donnez-moi vos impressions si comme moi vous n’avez pas d’ami et passez votre temps à la maison devant l’ordi au lieu de vous dorer la pilule entouré de femmes fontaines sur une île déserte.

Une source de flux RSS pas mal ici.

PS: Normalement dans l’onglet en haut à droite il devrait y avoir la liste des boards populaires, on calcule ça en fonction du nombre de visiteurs en ligne en temps réel, Sam avait fait un article dessus.

Et une bonne fin qui pourrait faire brève de comptoir:
“Tant que le board n’est pas populaire il reste anonyme” (et donc ne s’affiche pas dans l’onglet) ^^

]]>
http://sametmax.com/multiboards-customizable-le-retour-de-la-mort-de-la-peur-de-mourir/feed/ 18
Multiboards est désormais customisable 22 http://sametmax.com/multiboards-est-desormais-customisable/ http://sametmax.com/multiboards-est-desormais-customisable/#comments Sun, 26 Jul 2015 19:23:54 +0000 http://sametmax.com/?p=16696 J’avais pensé à un titre du genre: “Vous aussi, créez votre propre Multiboards et devenez riche” mais ça risquait de faire légèrement pompeux. On garde donc un titre simple.

Pour ceux qui ne connaissaient pas, Multiboards est une simple page web qui affiche les flux rss de certains sites sélectionnés par nos soins. Après quelques années de service on s’est aperçu que pas mal de monde l’utilisait, on a même eu des suggestions d’améliorations (merci Nain Genieu) et des demandes de libération du code source.
Bon le code c’est pas pour tout de suite car il est super crade et que Sam acceptera jamais de laisser ça sans passer un bon coup de balais factoriseur XR-2200. Mais en attendant vous pouvez créer vos pages d’agrégation de flux persos et les partager avec le monde entier ou votre voisine de palier (celle qui a d’énormes nibards).

Pour créer son board on va sur http://multiboards.net/build et on ajoute ses flux RSS, on peut déplacer les flux dans la grille à sa convenance s’ils n’ont pas été rentrés dans le bon ordre. Lorsque l’on est satisfait avec sa page, on clique sur le bouton vert et on peut voir le mimi, le rara le miracle apparaître sous nos yeux ébahis !

mb_custo

Pour le moment vu que ça a été fait à l’arrache dans les chiottes de l’aéroport de Manille y a pas bcp de fonctionnalités marrantes mais lorsque le code sera libéré on espère avoir de jolies contribs ^^.

Quelques idées pour le futur:

  • Ajouter une alerte sur des mots-clef comme… “salope” (c’est important les mots-clef)
  • Lorsque une url a été lu l’indiquer sur la grille en lui attribuant une autre couleur
  • rajouter des radios ou des fonctionnalités au player
  • pouvoir customizer ses radios, les news de bas de page et pourquoi pas d’autres sources d’images à la place d’imgur
  • et plein d’autres choses qui ne devraient pas exister si nous étions dans un monde parfait.

NB:
Le player a été changé aussi, plus de flash et place au HTML5, un petit player maison hyper simple mais qui fait son job.

On attend vos retours, ça doit foisonner de bugs

]]>
http://sametmax.com/multiboards-est-desormais-customisable/feed/ 22
Bougez avec la poste… 13 http://sametmax.com/bougez-avec-la-poste/ http://sametmax.com/bougez-avec-la-poste/#comments Wed, 08 Jul 2015 16:04:55 +0000 http://sametmax.com/?p=16587 On a décidé de commander quelques trucs pour bidouiller un raspberry PI sur un site américain.

Grâce au Tracking chez UPS on peut savoir où se balade notre colis.
C’est assez cocasse…

Apparement le colis est arrivé dans notre ville mais a du repartir à Paris pour enfin revenir demain ou…

Heureusement que c’est pas un bon Maroilles bien vieux.

laposte

]]>
http://sametmax.com/bougez-avec-la-poste/feed/ 13
Un ptit post pour remercier tous les contributeurs 37 http://sametmax.com/un-grand-merci/ http://sametmax.com/un-grand-merci/#comments Fri, 15 May 2015 19:50:06 +0000 http://sametmax.com/?p=16268 Après ces quelques années de blogging je voulais remercier, et je pense pouvoir parler aussi au nom de Sam, tous ceux qui ont participé à la joie et la bonne humeur de ce blog.

Mais aussi à l’évolution d’IndexError où nous pouvons voir chaque jour avec un très grand plaisir des contributeurs aider sans critiquer ou juger, apporter des réponses ou donner des pistes sans rien demander en échange.

Merci à vous tous de donner de votre (précieux) temps pour aider votre “prochain” programmeur. La vitesse des réponses sur IndexError est tout juste hallucinante malgré la “petite” communauté.

De plus les commentaires sur le Blog sont toujours courtois et intéressants.

Je remercie en particulier pour IndexError, pour le Blog ça serait trop long à lister (mais j’en oublie certainement):

Foxmask, boblinux, jc, cOda, doublenain, furankun, Hawke et bien d’autres…

Aller je vais aux putes, ce post m’a épuisé.

Passez un bon Noël!

]]>
http://sametmax.com/un-grand-merci/feed/ 37
Ne pas faire d’enfant est-il égoïste ? 68 http://sametmax.com/ne-pas-faire-denfant-est-il-egoiste/ http://sametmax.com/ne-pas-faire-denfant-est-il-egoiste/#comments Sun, 10 Aug 2014 06:26:23 +0000 http://sametmax.com/?p=11764 Je vais faire court car j’ai piscine!

On est dimanche matin, il fait beau dehors, les oiseaux gazouillent, un petit fond de musique des années 90.
J’ai ma tasse de café “mon grain de saveur“, je vérifie le chiffre d’affaire de mes sites internet, l’argent rentre, faudra peut-être investir ici après tout. J’habite en Asie depuis un an, il y a peu de mauvais et beaucoup de bon.

Dans un mois c’est la rentrée des classes en France, mes anciens amis sont quasiment tous en couple, avec 1 ou plusieurs enfants, certains sont déjà séparés avec gamins sur les bras, alternance des visites, etc. La routine quoi.

On ne peut pas être partout.

Moi je suis seul, je n’ai pas de femme, pas de gosse, pas de chien, même pas une petite mycose pour me tenir companie.
Le pire c’est que j’aime ça, si je veux partir à Tokyo demain à quoi dois-je penser ?
A qui vais-je demander la permission ? Personne.
Quelles sont mes contraintes ? Aucune
Quel est mon budget ? Très large.

Je suis le stéréotype du célibataire baroudeur, en couple 7 ans il y a plusieurs années de cela je pense avoir été vacciné, passé par toutes les étapes, de l’amour à la haine (dans l’ordre). Avec tous les clichés que l’on peut imaginer. Sans rien regretter au final.

Le tournant:

Seulement voilà, là où mes amis ont commencé à envisager de fonder une famille j’ai préféré investir dans ma vie professionnelle, de plus la crise était en route, la surpopulation me posait un problème de conscience. Ma vision de l’avenir se rapprochant toujours plus de ça.

Quelques années ont passé et j’ai vu mes amis “fonder” leur famille sur le si joli modèle que l’on nous vend, avec la télé 16:9 à crédit, la PS3 à crédit, l’iPhone à credit, le VolksWagen à crédit, le chien à crédit, bref une vie à crédit.
Le boulot dont ils parlent avec dégoût, “mais c’est alimentaire tu comprends, ça va changer” n’est pas amusant pour eux.
Les vacances ? “Je ne peux pas j’ai le crédit du nouveau VolksWagen que l’on vient d’acheter parce que tu comprends il a l’allume-cigare connecté à l’iPhone”. 35 000€, avec réduction de 5% sur le levier de vitesse en acajou véritable de Taiwan.

Certains s’en sortent mieux que d’autres quand même, soyons objectif.

Au final ?

Résulats des courses, ma mère me reproche d’être un égoïste car je n’ai pas fait d’enfant “comme tout le monde”, mes anciens amis me disent que j’ai de la chance mais qu’eux ne peuvent pas bouger à cause des enfants, des crédits, d’ailleurs c’est l’heure d’aller à Carrefour remplir le caddie.

Les enfants sont nécessaires à la survie de la race humaine, avoir des enfants est également un bonheur pour les parents, sans ça je ne serais pas là. Mais depuis 40 ans tout s’est accéléré.

– A l’heure où l’on soupçonne très fortement notre civilisation d’être condamnée à court terme du moins telle que nous la connaissons.

– Avec une démographie incontrôlable, déjà 7 Milliards.

Et oui ça fait mal au fion...

– Avec des contaminations nucléaires pas anodines.

– Avec une exploitation des ressources toujours plus intenses.

Je me pose souvent cette question:

Est-ce-que je suis égoïste de ne pas vouloir d’enfant ou est-ce que ce sont ceux qui ont des enfants qui sont égoïstes alors que la planète ne peut pas les accueillir convenablement ?

Je n’ai pas de problème avec ma mère.

Et vous ?

PS: Pour éviter le Fast-Trolling je précise que je ne suis pas contre la famille, bien au contraire, mais le mot famille n’a plus le même sens qu’il y a 40 ans il faut l’avouer. Avec un divorce au bout de 5 ans à la clef, des enfants à charge, c’est plus de la “consommation”.
Si cela ne tenait qu’à moi je ferais faire des tests de QI à ceux qui veulent avoir des enfants. J’ai eu droit à l’étiquette d’eugéniste en herbe avec cette phrase…

]]>
http://sametmax.com/ne-pas-faire-denfant-est-il-egoiste/feed/ 68
Traquez les erreurs de vos apps Django avec Sentry 16 http://sametmax.com/traquez-les-erreurs-de-vos-apps-django-avec-sentry/ http://sametmax.com/traquez-les-erreurs-de-vos-apps-django-avec-sentry/#comments Wed, 26 Mar 2014 04:36:51 +0000 http://sametmax.com/?p=9944 Tout foire tout le temps. Le site (ou app) sans erreur n’existe pas. Après chaque mise à jour on croise les doigts et on espère que tout va bien se passer.
Les plus courageux auront fait des tests unitaires en amont qu’ils lanceront avant l’update, les autres comme moi vont commiter leurs changements et redémarrer le serveur prod. On est boucher de père en fils dans la famille…

Avant toute chose Sentry qui avant était un projet Django serveur/client a depuis évolué et est devenu un serveur uniquement, laissant le choix du client suivant votre framework/language de travail. Sentry est disponible sur à peu près toutes les plateformes (Python, PHP, Ruby, JavaScript, Java, Node.js, iOS) et les frameworks Rails et Django. La documentation est très fournie et le projet très actif.

Dans le cas d’un site web en général on a tellement de pages qu’on ne peut pas prédire à l’avance ce qui va foirer ou pas (mais ça foire toujours, tout foire, etc…). Même si vous avez fait les tests unitaires vous aurez forcément oublié quelque chose.

Cette page spéciale sur les nains obèses unijambistes scatophiles pour lesquels vous avez créé un tag unique et qui ne supporte pas que vous ayez changé votre mode de cache va lamentablement planter et vous priver de la fidélité de DSK sur votre site pour longtemps.

Heureusement nous allons pouvoir logger toutes ces erreurs et avoir des jolis graphiques post-mortems. Bien évidement ça va vous faire du taf en plus bande de feignasses.

Sentry vient en standalone ou en version gratuite limitée, hebergée par les créateurs.
J’ai voulu installer la standalone parceque je revenais de l’apéro et qu’au 8ème Ricard on veut tout faire soit-même mais la raison et 14heures de sommeil l’ont emporté, c’est à mon réveil que je me suis alors décidé à installer la version trial limitée à 7 jours de log et 2800 evenements loggés (qui au passage suffit sur un de nos plus gros sites).

la mise en place est vraiment des plus simples:

Créez un compte et ensuite récupérez la clef API dans les préférences sur votre compte en ligne Sentry.

Du côté de votre projet Django:

Installez Raven, qui est un client Python pour Sentry. Il va se charger de collecter vos erreurs et les transmettre à Sentry.

Comme d’habitude une bonne PIP:

  pip install raven

Dans le fichier settings.py de votre projet Django:

Utilisez la clef Api fournie par Sentry (voir plus haut)

# used for sentry login
RAVEN_CONFIG = {
    'dsn': 'https://aboudouboudousplish:aboudouboudousplash@app.getsentry.com/1984',
}

Vous pouvez faire un test pour voir si tout est bien configuré:

Dans votre projet Django tapez

python manage.py raven test

Vous devriez recevoir un email de Sentry avec le récapitulatif du test raven.


L’interface Sentry:

La liste des évènements avec possibilité de filtres.

Sur le flux vous allez avoir la liste de tous les évènements loggés, vous pouvez les trier en choisissant parmi une pléthore d’options. Vous pouvez nettoyer ce flux en un seul clic (lors d’un redémarrage de serveur vous risquez d’avoir beaucoup d’erreurs qui n’en sont en fait pas, donc inutile de les traiter).

L'évènement en détail, une clarté qui donne envie d'avoir des bugs ^^

Chaque évènement du flux a une vue détail où vous allez pouvoir tracer le bug, c’est clair et plein d’informations (un peu comme les pages de debug Django). Il y a la possibilité d’ajouter des notes, de relancer la requête afin de vérifier la correction effectuée.


Le mode Team:

Sentry vous permet de bosser en équipe, vous créez un projet, des utilisateurs et chacun peut monitorer, corriger des bugs etc (pas dispo dans la version trial). Vous pouvez aussi créer des groupes d’utilisateurs qui n’auront accès qu’à certains projets. Le côté équipe a bien été intégré. Vous saurez sur qui gueuler lorsque le bug aura été mal corrigé.

Conclusion:
Monitorer ses apps est un vrai calvaire quand on n’a pas les bons outils ou que ces derniers sont chiants à installer/maintenir.
Sentry offre deux possibilités d’installation et leur mode trial vaut vraiment le coup (gratuit je le répète), les plus courageux se farciront l’install.
Pour la version standalone j’ai lu un peu partout qu’il était préférable de l’installer sur un serveur à part, à méditer avant de se lancer. Les logs sont en temps réél, vous n’avez pas à attendre le lendemain pour savoir ce qui a planté la veille, vous pouvez donc corriger vos bugs rapidement.

Le plus gros problème de Sentry je pense c’est qu’on tombe accroc, je m’y rend désormais plusieurs fois par jour pour voir si il n’y a pas un petit bug à corriger :)

PS: je cherche l’équivalent pour monitorer les serveurs, Munin est trop vieux et tous les autres outils que j’ai pu tester demandent à installer (entendez passer des heures à compiler) toute une machinerie. L’idéal serait des paquets à installer sur les serveurs à monitorer + service en ligne à la Sentry.

]]>
http://sametmax.com/traquez-les-erreurs-de-vos-apps-django-avec-sentry/feed/ 16
Sondage! Aimeriez-vous un espace petites-annonces chez S&M ? 14 http://sametmax.com/sondage-aimeriez-vous-un-espace-petites-annonces-chez-sm/ http://sametmax.com/sondage-aimeriez-vous-un-espace-petites-annonces-chez-sm/#comments Sat, 15 Feb 2014 16:53:54 +0000 http://sametmax.com/?p=9165 Pendant que Sam vous mijotte des bons petits tutos à se lécher les babines moi je vais vour divertir un peu l’oignon avec ce petit vote.

On a quelques e-mails par mois assez surprenants, certains nous demandent si on ne veut pas bosser pour eux, d’autres veulent faire la publicité de leur app/produit, d’autres encore aimeraient nous rencontrer, voire même certaines coucher avec moi (ah non… merde)

On ne peut pas répondre favorablement à ces requêtes et c’est peut-être l’occasion de permettre à certains d’entre-vous d’échanger, vendre, se rencontrer via une sorte de pages jaunes/craiglist/ads (appelez ça comme vous voulez).

En gros des petites-annonces dans lesquelles nous définirons des catégories précises (on ne veut pas d’annonce pour vendre la recette miracle pour la repousse de la moustache).

On préfère vous demander avant car on estime que c’est une bonne chose de proposer plutôt que d’imposer. Et puis pour tâter le potentiel.

Les annonces sont bien évidement gratoches, on mettra peut-être des quotas si il y a des abus.

Quelques catégories pour donner une idée:
– Lans (parties)
– hack parties
– ventes de matos info
– trucs geek (gadgets, etc)
– demande de cours d’info
– donne des cours d’info
– donne des cours de math
– sallons info
– propositions de collaboration
– projets de conquête du monde
– demande d’aide sur des sujets particuliers
etc.

On a pas encore de liste précise des catégories mais il y a de quoi faire dans notre domaine. Si vous avez des idées quand aux catégories n’hésitez pas, balancez !

Aller, détente….

Note: There is a poll embedded within this post, please visit the site to participate in this post's poll. ]]>
http://sametmax.com/sondage-aimeriez-vous-un-espace-petites-annonces-chez-sm/feed/ 14
Utilisez-vous l’anglais pour vos recherches d’informations ? 37 http://sametmax.com/utlisez-vous-langlais-pour-vos-recherches-dinformations/ http://sametmax.com/utlisez-vous-langlais-pour-vos-recherches-dinformations/#comments Mon, 10 Feb 2014 07:22:14 +0000 http://sametmax.com/?p=9106 A l’heure où internet est l’outil quasi-indispensable pour trouver une information (technique ou de tous les jours) et où une grande partie de cette dernière est rédigé en anglais la question est:

Note: There is a poll embedded within this post, please visit the site to participate in this post's poll. ]]>
http://sametmax.com/utlisez-vous-langlais-pour-vos-recherches-dinformations/feed/ 37
Installer Python 2.7.x sur CentOS 6.x les doigts dans le nez 19 http://sametmax.com/installer-python-2-7-x-sur-centos-6-x-les-doigts-dans-le-nez/ http://sametmax.com/installer-python-2-7-x-sur-centos-6-x-les-doigts-dans-le-nez/#comments Sat, 08 Feb 2014 16:43:12 +0000 http://sametmax.com/?p=9084 J’ai la vieille habitude de bosser sur CentOS pour des raisons personnelles absolument infondées et grotesques mais les habitudes ont la vie dure comme on dit.
Et ainsi va la vie, qui évolue au fil du temps, et python aussi, et les apps aussi, et un jour il faut pour des raisons de vie ou de mort passer à une version plus récente de Python.
Sam a tenté cette folie il y a quelques temps, avec comme seules réserves un pot de glace ben&jerry et un ouvre-boîte à bouteilles. Bien mal lui en a pris, il a passé des heures sur le serveur, a tout pété et a fini sous exomil.
Suite à ça je n’ai jamais osé tenter le coup jusqu’à hier, en tombant sur cet article que je me propose de vous traduire.

CentOS 6.x vient avec Python 2.6.6, si vous tentez une mise à jour comme ça par des paquets ou en compilant les sources sans faire attention vous risquez de tout péter, car Yum utilise python lui aussi, mais la 2.6.6.

Je précise que le tuto à la base est pour CentOS 6.3 et Python 2.7.3 et que moi j’ai testé Python 2.7.5 sur CentOS 6.5, je pense donc que c’est bon pour à peu près toutes les versions voisines.

L’astuce consiste à compiler la nouvelle version de Python et de l’installer en tant que version alternative sans désinstaller celle présente sur le serveur.

Les paquets nécessaires:

yum groupinstall "Development tools"
yum -y zlib-devel bzip2-devel openssl-devel ncurses-devel

On télécharge la version de Python à installer, pour ma part c’était Python 2.7.5 pour pouvoir utiliser opencv. Normalement les autres versions devraient passer aussi.

cd /opt
wget http://www.python.org/ftp/python/2.7.5/Python-2.7.5.tar.bz2 --no-check-certificate
tar xvf Python-2.7.5.tar.bz2
cd Python-2.7.5
./configure --prefix=/usr/local --enable-shared
make && make altinstall

ATTENTION! Deux choses à ne pas oublier:

–enable-shared: Certaines applications (comme opencv) ont besoin d’avoir accès à des librairies partagées d’autres applications, c’est le fameux fichier libpython2.7.so qui fait merder vos compilations 1 fois sur deux, si si rappelez-vous…

altinstall: ne pas utiliser install mais bien altinstall. install va écraser votre installation actuelle de python (2.6.6) et tout péter. altinstall va installer votre nouvelle version de python dans un autre répertoire.

Si tout s’est bien passé vous devriez avoir 2 versions de Python à présent.
La version système 2.6.6 et la version 2.7.x dans /usr/local/bin/python2.7.
Vous pouvez faire un lien symbolique pour mettre la 2.7.x par defaut:

ln -s /usr/local/bin/python2.7 /usr/local/bin/python

Verifions que tout est ok:

[pina@colada ~]# python
Python 2.7.5 (default, Feb  8 2014, 06:51:01)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>

Chez moi ça marche! Yeahhh baby!

Cadeau BONUX! Installation de easy_install et PIP:

Pour finir on va mettre en place le fameux PIP afin de pouvoir ultérieurement installer des apps.

cd /opt
wget http://pypi.python.org/packages/source/d/distribute/distribute-0.6.27.tar.gz
tar xf distribute-0.6.27.tar.gz --no-check-certificate
cd distribute-0.6.27
python2.7 setup.py install

Normallement vous devriez avoir un chemin easy_install version 2.7 pour votre nouvelle version Python2.7 du genre /usr/local/bin/easy_install-2.7

Faites un test:

[pina@colada ~]# ls -ltr /usr/local/bin/easy_install*
-rwxr-xr-x 1 root root 340  8 févr. 06:04 /usr/local/bin/easy_install-2.7
-rwxr-xr-x 1 root root 332  8 févr. 06:04 /usr/local/bin/easy_install

Installons PIP:

easy_install-2.7 pip

Et testons PIP:

pip install numpy
[pina@colada ~]# python
Python 2.7.5 (default, Feb  8 2014, 06:51:01)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import numpy
>>> numpy.__version__
'1.8.0'
>>>

Et c’est parti pour des heures de code afin de conquérir le monde !

La semaine prochaine nous verrons comment faire bouillir des lutins sans que la peau se décolle.

]]>
http://sametmax.com/installer-python-2-7-x-sur-centos-6-x-les-doigts-dans-le-nez/feed/ 19
Virtualenv EnvironmentError: mysql_config not found sous MAC OSX 16 http://sametmax.com/virtualenv-environmenterror-mysql_config-not-found-sous-mac-osx/ http://sametmax.com/virtualenv-environmenterror-mysql_config-not-found-sous-mac-osx/#comments Tue, 04 Feb 2014 10:56:18 +0000 http://sametmax.com/?p=8963 Comme le post précédent est inutile j’en fais un autre qui doit concerner au moins 0.00001% de la population.

A vous qui essayez depuis 2 heures de configurer MySQL-python sous votre virtualenv, cet article vous est dédié.

Cette erreur vicieuse m’arrive à chaque fois que j’installe MySQL-python dans un nouvel environnement virtuel. Ceci dit vous l’aurez peut-être sous un autre OS. Sur CentOS j’avais qu’à faire un yum install mysql-devel mais sous Mac c’est autre chose. Plus de puissance engendre plus de responsabilités…

 
Max $  pip install MySQL-python
Downloading/unpacking MySQL-python
  Downloading MySQL-python-1.2.5.zip (108Kb): 108Kb downloaded
  Running setup.py egg_info for package MySQL-python
    sh: mysql_config: command not found
    Traceback (most recent call last):
      File "<string>", line 14, in <module>
      File "/Users/Max/.virtualenvs/zooscator/build/MySQL-python/setup.py", line 17, in <module>
        metadata, options = get_config()
      File "setup_posix.py", line 43, in get_config
        libs = mysql_config("libs_r")
      File "setup_posix.py", line 25, in mysql_config
        raise EnvironmentError("%s not found" % (mysql_config.path,))
    EnvironmentError: mysql_config not found
    Complete output from command python setup.py egg_info:
    sh: mysql_config: command not found
 
Traceback (most recent call last):
 
  File "<string>", line 14, in <module>
 
  File "/Users/Max/.virtualenvs/zooscator/build/MySQL-python/setup.py", line 17, in <module>
 
    metadata, options = get_config()
 
  File "setup_posix.py", line 43, in get_config
 
    libs = mysql_config("libs_r")
 
  File "setup_posix.py", line 25, in mysql_config
 
    raise EnvironmentError("%s not found" % (mysql_config.path,))
 
EnvironmentError: mysql_config not found
 
----------------------------------------
Command python setup.py egg_info failed with error code 1
Storing complete log in /Users/Max/.pip/pip.log

Il faut éditer votre fichier activate qui se trouve dans le répertoire bin de votre environnement virtuel: ex “/Users/Max/.virtualenvs/zooscator/bin/activate”

vi /Users/Max/.virtualenvs/zooscator/bin

Trouvez les lignes suivantes et ajoutez:

PATH=”$PATH:/opt/local/lib/mysql5/bin/”

...
_OLD_VIRTUAL_PATH="$PATH"
PATH="$VIRTUAL_ENV/bin:$PATH"
PATH="$PATH:/opt/local/lib/mysql5/bin/"
export PATH
...

Chez moi le chemin vers mysql est /opt/local/lib/mysql5/bin/, si vous ne connaissez pas le vôtre utilisez la commande locate: ex locate mysql

Une fois le fichier activate édité il faut le resourcer:

source /Users/Max/.virtualenvs/zooscator/bin/activate

Et vous pourrez alors installer MySQL-python tranquillou billou:

Max $  pip install MySQL-python
 
Downloading/unpacking MySQL-python
  Running setup.py egg_info for package MySQL-python
 
Installing collected packages: MySQL-python
  Running setup.py install for MySQL-python
[....................]
Successfully installed MySQL-python
Cleaning up...

Je vais nourrir mon cochon d’Inde.

]]>
http://sametmax.com/virtualenv-environmenterror-mysql_config-not-found-sous-mac-osx/feed/ 16