<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>noirbizarre.info &#187; Python</title>
	<atom:link href="http://noirbizarre.info/category/developpement/python/feed/" rel="self" type="application/rss+xml" />
	<link>http://noirbizarre.info</link>
	<description>Encore un blog de GeeK</description>
	<lastBuildDate>Mon, 03 Oct 2011 14:42:18 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>pip, virtualenv et virtualwrapper dans Cygwin</title>
		<link>http://noirbizarre.info/2010/12/10/pip-virtualenv-et-virtualwrapper-dans-cygwin/</link>
		<comments>http://noirbizarre.info/2010/12/10/pip-virtualenv-et-virtualwrapper-dans-cygwin/#comments</comments>
		<pubDate>Fri, 10 Dec 2010 17:24:20 +0000</pubDate>
		<dc:creator>noirbizarre</dc:creator>
				<category><![CDATA[Développement]]></category>
		<category><![CDATA[Mémentos]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[cygwin]]></category>
		<category><![CDATA[pip]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[virtualenv]]></category>

		<guid isPermaLink="false">http://noirbizarre.info/?p=186</guid>
		<description><![CDATA[Voici la marche à suivre pour installer Python, pip, virtualenv et virtualenvwrapper dans Cygwin (version 1.7.7-1 à ce jour). Python doit être installé via l&#8217;installeur de Cygwin. Pour installer pip, nous allons utiliser easy_install qui est fourni par setuptools (version 0.6c11 au moment où j&#8217;écris ces lignes). Pour trouver la dernière version en date correspondant à notre&#8230;]]></description>
			<content:encoded><![CDATA[<p>Voici la marche à suivre pour installer Python, pip, virtualenv et virtualenvwrapper dans Cygwin (version 1.7.7-1 à ce jour).</p>
<p>Python doit être installé via l&#8217;installeur de Cygwin.</p>
<p>Pour installer pip, nous allons utiliser easy_install qui est fourni par setuptools (version 0.6c11 au moment où j&#8217;écris ces lignes). Pour trouver la dernière version en date correspondant à notre version de Python (version 2.6.5 fournie par Cygwin), il faut se rendre sur <a href="http://pypi.python.org/pypi/setuptools#files">la page officielle</a>.</p>
<pre class="brush: plain; light: true; title: ; notranslate">
~$ wget http://pypi.python.org/packages/2.6/s/setuptools/setuptools-0.6c11-py2.6.egg
~$ sh setuptools-0.6c11-py2.6.egg
~$ easy_install pip
</pre>
<p>Une fois pip installé, il suffit de l&#8217;utiliser pour installer virtualenv et virtualenvwrapper</p>
<pre class="brush: plain; light: true; title: ; notranslate">~$ pip install virtualenv virtualenvwrapper</pre>
<p>On configure notre environnement dans .bashrc:</p>
<pre class="brush: bash; title: ~/.bashrc: declaration de l&#039;environnement; notranslate">
# Python pip / virtualenv / virtualenvwrapper
export WORKON_HOME=$HOME/.virtualenvs
export PIP_VIRTUALENV_BASE=$WORKON_HOME
export PIP_RESPECT_VIRTUALENV=true
source /usr/bin/virtualenvwrapper.sh
</pre>
<p>Ensuite, tout fonctionne comme dans <a href="http://noirbizarre.info/2010/07/10/pip-virtualenv-et-pydev/">cet article</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://noirbizarre.info/2010/12/10/pip-virtualenv-et-virtualwrapper-dans-cygwin/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>pip, virtualenv, virtualenvwrapper et pydev</title>
		<link>http://noirbizarre.info/2010/07/10/pip-virtualenv-et-pydev/</link>
		<comments>http://noirbizarre.info/2010/07/10/pip-virtualenv-et-pydev/#comments</comments>
		<pubDate>Sat, 10 Jul 2010 18:51:44 +0000</pubDate>
		<dc:creator>noirbizarre</dc:creator>
				<category><![CDATA[Développement]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[eclipse]]></category>
		<category><![CDATA[pip]]></category>
		<category><![CDATA[pydev]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[virtualenv]]></category>

		<guid isPermaLink="false">http://www.noirbizarre.info/?p=35</guid>
		<description><![CDATA[L&#8217;une des difficultés majeures du développement aujourd&#8217;hui est la gestion des dépendances et en particulier pour Python l&#8217;isolement de l&#8217;environnement de développement. Pour résoudre ce problème, nous allons utiliser : pip: un remplaçant d&#8217;easy_install bien plus complet. virtualenv: permet d&#8217;instancier des environnements python isolés. virtualenvwrapper: facilite l&#8217;utilisation de virtualenv ﻿Installation des outils de développement Si ce n&#8217;est déjà fait,&#8230;]]></description>
			<content:encoded><![CDATA[<p>L&#8217;une des difficultés majeures du développement aujourd&#8217;hui est la gestion des dépendances et en particulier pour Python l&#8217;isolement de l&#8217;environnement de développement.</p>
<p>Pour résoudre ce problème, nous allons utiliser :</p>
<ul>
<li><a title="pip" href="http://pip.openplans.org/">pip</a>: un remplaçant d&#8217;easy_install bien plus complet.</li>
<li><a title="virtualenv" href="http://virtualenv.openplans.org/">virtualenv</a>: permet d&#8217;instancier des environnements python isolés.</li>
<li><a href="http://www.doughellmann.com/projects/virtualenvwrapper/">virtualenvwrapper</a>: facilite l&#8217;utilisation de virtualenv</li>
</ul>
<h3>﻿Installation des outils de développement</h3>
<p>Si ce n&#8217;est déjà fait, il faut installer un environnement de développement python classique:</p>
<pre class="brush: plain; light: true; title: ; notranslate">~$ sudo aptitude install python-setuptools python-dev build-essential</pre>
<p>Nous installons la dernière version de pip:</p>
<pre class="brush: plain; light: true; title: ; notranslate">~$ sudo easy_install pip</pre>
<p>Puis nous installons virtualenv et virtualenvwrapper</p>
<pre class="brush: plain; light: true; title: ; notranslate">~$ sudo pip install virtualenv virtualenvwrapper</pre>
<p>Il faut maintenant configurer notre environnement en ajoutant au fichier ~/.bahrc</p>
<pre class="brush: bash; title: ~/.bashrc: déclaration de l&#039;environnement; notranslate">
# Python pip / virtualenv / virtualenvwrapper
export WORKON_HOME=$HOME/.virtualenvs
export PIP_VIRTUALENV_BASE=$WORKON_HOME
export PIP_RESPECT_VIRTUALENV=true
source /usr/local/bin/virtualenvwrapper.sh
</pre>
<p>Puis nous initialisons l&#8217;environnement:</p>
<pre class="brush: plain; light: true; title: ; notranslate">
~$ mkdir ~/.virtualenvs
~$ source ~/.bashrc
virtualenvwrapper.user_scripts Creating /home/noirbizarre/.virtualenvs/initialize
virtualenvwrapper.user_scripts Creating /home/noirbizarre/.virtualenvs/premkvirtualenv
virtualenvwrapper.user_scripts Creating /home/noirbizarre/.virtualenvs/postmkvirtualenv
virtualenvwrapper.user_scripts Creating /home/noirbizarre/.virtualenvs/prermvirtualenv
virtualenvwrapper.user_scripts Creating /home/noirbizarre/.virtualenvs/postrmvirtualenv
virtualenvwrapper.user_scripts Creating /home/noirbizarre/.virtualenvs/predeactivate
virtualenvwrapper.user_scripts Creating /home/noirbizarre/.virtualenvs/postdeactivate
virtualenvwrapper.user_scripts Creating /home/noirbizarre/.virtualenvs/preactivate
virtualenvwrapper.user_scripts Creating /home/noirbizarre/.virtualenvs/postactivate
virtualenvwrapper.user_scripts Creating /home/noirbizarre/.virtualenvs/get_env_details
</pre>
<p>Nous sommes maintenant prêts à instancier notre premier environnement.</p>
<h3>Création d&#8217;un environnement isolé</h3>
<p>Il suffit maintenant d&#8217;utiliser la commande <strong>mkvirtualenv</strong>.</p>
<pre class="brush: plain; light: true; title: ; notranslate">
~$ mkvirtualenv --no-site-packages myenv
New python executable in myenv/bin/python
Installing setuptools............done.
virtualenvwrapper.user_scripts Creating /home/noirbizarre/.virtualenvs/myenv/bin/predeactivate
virtualenvwrapper.user_scripts Creating /home/noirbizarre/.virtualenvs/myenv/bin/postdeactivate
virtualenvwrapper.user_scripts Creating /home/noirbizarre/.virtualenvs/myenv/bin/preactivate
virtualenvwrapper.user_scripts Creating /home/noirbizarre/.virtualenvs/myenv/bin/postactivate
virtualenvwrapper.user_scripts Creating /home/noirbizarre/.virtualenvs/myenv/bin/get_env_details
(myenv)~$
</pre>
<p>L&#8217;option <strong>&#8211;no-site-packages</strong> permet d&#8217;avoir une installation de python nue, c&#8217;est à dire sans aucune des dépendances python ajoutées dans l&#8217;installation courante.</p>
<h3>Utilisation en ligne de commande</h3>
<p>Une fois l&#8217;environnement actif, le prompt du shell est préfixé par &laquo;&nbsp;(nom de l&#8217;environnement)&nbsp;&raquo;.</p>
<p>Pour désactiver l&#8217;environnement, il suffit d&#8217;executer:</p>
<pre class="brush: plain; light: true; title: ; notranslate">
(myenv)~$ deactivate
~$
</pre>
<p>Pour réactiver l&#8217;environnement il suffit d&#8217;executer</p>
<pre class="brush: plain; light: true; title: ; notranslate">
~$ workon myenv
(myenv)~$
</pre>
<p>La liste complète des commandes de virtualenvwrapper est disponible <a href="http://www.doughellmann.com/docs/virtualenvwrapper/command_ref.html">ici</a>.</p>
<h3>Utilisation dans Eclipse/Pydev</h3>
<p>Pour utiliser cet environnement dans eclipse avec Pydev il suffit d&#8217;aller dans <strong>Preferences &gt; Pydev &gt; Interpreter Python </strong>et d&#8217;ajouter l&#8217;executable python qui correspond, dans notre cas ﻿﻿﻿<strong>~/.virtualenvs/myenv/bin/python</strong>.</p>
<p><a href="http://www.noirbizarre.info/wp-content/uploads/2010/07/virtualenv_pydev_eclipse.png"><img class="alignnone size-medium wp-image-52" title="virtualenv_pydev_eclipse" src="http://www.noirbizarre.info/wp-content/uploads/2010/07/virtualenv_pydev_eclipse-300x241.png" alt="Configuration de l'executable python" width="300" height="241" /></a></p>
<p>Sur l&#8217;écran qui apparait ensuite, il ne faut selectionner que les chemin qui correspondent à notre environnement (ceux commençant par ﻿~<strong>/.virtualenvs/myenv/</strong><strong>).</strong></p>
<p><a href="http://www.noirbizarre.info/wp-content/uploads/2010/07/Selection-Needed.png"><img class="alignnone size-medium wp-image-53" title="Selection Needed" src="http://www.noirbizarre.info/wp-content/uploads/2010/07/Selection-Needed-300x268.png" alt="Sélection des chemins" width="300" height="268" /></a></p>
<p>L&#8217;environnement apparait ensuite dans la liste des environnement disponibles.</p>
<p><a href="http://www.noirbizarre.info/wp-content/uploads/2010/07/Preferences_env_pydev.png"><img class="alignnone size-medium wp-image-54" title="Preferences_env_pydev" src="http://www.noirbizarre.info/wp-content/uploads/2010/07/Preferences_env_pydev-300x242.png" alt="Préférences Pydev de l'interpreteur python" width="300" height="242" /></a></p>
<p>Il suffit ensuite de le sélectionner dans les préférences des projets concernés.</p>
<p><a href="http://www.noirbizarre.info/wp-content/uploads/2010/07/myproject_pydev_interpreter.png"><img class="alignnone size-medium wp-image-55" title="myproject_pydev_interpreter" src="http://www.noirbizarre.info/wp-content/uploads/2010/07/myproject_pydev_interpreter-300x221.png" alt="Sélection de l'interpréteur python d'un projet" width="300" height="221" /></a></p>
<h3>Utilisation de pip</h3>
<p>Lorsque l&#8217;environnement est actif, pip s&#8217;utilise comme apt/aptitude.</p>
<pre class="brush: plain; light: true; title: ; notranslate">
# Recherche de paquets
(myenv)~$ pip search mypackage

# Installation d'un paquet
(myenv)~$ pip install mypackage
</pre>
<p>Lorsque l&#8217;environnement est inactif, il est possible de specifier à pip un environnement pour l&#8217;installation avec l&#8217;option -E:</p>
<pre class="brush: plain; light: true; title: ; notranslate">~$ pip install -E myenv mypackage</pre>
<p>Il est possible de dumper tous les modules installé dans un fichier:</p>
<pre class="brush: plain; light: true; title: ; notranslate">~$ pip freeze &gt; requirements</pre>
<p>Puis de les recharger d&#8217;un coup dans un autre environnement:</p>
<pre class="brush: plain; light: true; title: ; notranslate">~$ pip install -r requirements</pre>
<p>Pour plus de détails sur l&#8217;utilisation de pip, la <a href="http://pip.openplans.org/">page officielle</a> fait office de documentation.</p>
]]></content:encoded>
			<wfw:commentRss>http://noirbizarre.info/2010/07/10/pip-virtualenv-et-pydev/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

