virtualenvwrapper – Sam & Max http://sametmax.com Du code, du cul Wed, 23 Dec 2020 13:35:02 +0000 en-US hourly 1 https://wordpress.org/?v=4.9.7 32490438 Mieux que Python virtualenvwrapper : pew http://sametmax.com/mieux-que-python-virtualenvwrapper-pew/ http://sametmax.com/mieux-que-python-virtualenvwrapper-pew/#comments Sat, 20 Dec 2014 02:18:20 +0000 http://sametmax.com/?p=12939 pew.]]> Vous avez compris que Python sans virtualenv c’est comme la mer sans les vagues, c’est comme les vagues sans l’écume, c’est comme l’écume sans le sel, c’est comme le sel sans le poivre…

Mais c’est aussi appétissant que les méduses échouées.

Donc pour se faciliter la vie, vous utilisez virtualenvwrapper.

Et bien il y a plus meilleur : pew.

Non content d’avoir un nom cool et court, c’est un progrès non négligeable dans l’ergonomie de notre vie de dresseur de reptiles.

D’abord : pip install pew.

Ensuite, tableau d’équivalence avec virtualenvwrapper :

virtualenvwrapper pew
Lister les env existant workon pew ls
Créer un env mkvirtualenv name pew new name
Supprimer un env rmvirtualenv name pew rm name
Activer un env workon name pew workon name
Aller dans le dossier site-packages cdsitepackages cd $(pew sitepackages_dir)
Valeur par défaut pour $WORKON_HOME (dossier qui contient tous les envs) ~/.virtualenvs ~/local/share/virtualenvs

Vous noterez que les commandes de pew sont plus faciles à retenir, plus cohérentes, et toutes des sous-commandes histoire d’éviter de pourrir son espace de nom.

Autres avantages : pew n’a pas besoin qu’on ajoute un fichier à votre .bashrc pour marcher. Car pew ne source pas un env dans votre shell courant, il ouvre un nouveau shell. Pour sortir de l’env, c’est donc un simple Ctrl + D.

Seulement ça ne s’arrête pas là. Pew possède quelques commandes bonus qui changent bien la vie :

virtualenvwrapper pew
Éxecuter la commande dans un env sans l’activer Nope pew in name commande
Éxecuter la commande dans tous les env Non pew inall commande
Dupliquer un virtualenv ailleurs Nada pew cp name destination
Ajouter un chemin au PYTHONPATH de l’env Fuck it pew add path
Changer la prise en compte des libs du site-packages du système quand on veut I’m out pew toggleglobalsitepackages
Créer un env temporaire supprimé dès qu’on en sort Now you are just pushing it pew mktmpenv
Choisir un dossier vers lequel aller à l’activation de l’env BANG ! pew setproject path

Bon, le seul truc qui manque pour le moment, ce sont les hooks.

]]>
http://sametmax.com/mieux-que-python-virtualenvwrapper-pew/feed/ 16 12939
A l’intérieur de mon .bashrc http://sametmax.com/a-linterieur-de-mon-bashrc/ http://sametmax.com/a-linterieur-de-mon-bashrc/#comments Tue, 22 Jan 2013 10:26:44 +0000 http://sametmax.com/?p=4238 .bashrc donne rapidement lieu dans les comments à un concours de celui qui a la plus longue (jusqu'à ce qu'arrive un utilisateur de zsh, et alors commence le concours de celui qui pisse le plus loin). Mais bon, aujourd'hui j'ai la flemme d'écrire un article complet.]]> Généralement montrer son .bashrc donne rapidement lieu dans les comments à un concours de celui qui a la plus longue (jusqu’à ce qu’arrive un utilisateur de zsh, et alors commence le concours de celui qui pisse le plus loin). Mais bon, aujourd’hui j’ai la flemme d’écrire un article complet.

Rappel : le .bashrc c’est le fichier qui est automatiquement chargé au démarrage du shell bash, le shell par défaut sur la plupart des Unix incluant Mac et Ubuntu.

Donc si vous voulez avoir une expérience de travail personnalisée dans votre terminal, c’est dans ce fichier que ça se passe.

Personnellement, j’ai tout le bordel que met Ubuntu par défaut (notamment les trucs avec les autocomplétions de partout). En en prime je rajoute :

# un raccourcis pour lancer Redis car je le met sur off par défaut mais je le 
# lance souvent

function redis {
    if [ ! -e "/var/run/redis/redis-server.pid" ] ; then
        sudo service redis-server start
    fi
}

# un tas de raccourcis type

function projet_django {
    workon projet_django;
    cd /home/sam/Work/projet_django/repo/projet_django;

    if [[ $# -ne 0 ]]; then
        ./manage.py $@
    fi
}
alias sb='projet_django'

# CF: http://sametmax.com/un-alias-bash-pour-django-virtualenv-dont-je-ne-peux-plus-me-passer/


# fonction fétiche de bourrin

function killbill {
    BAK=$IFS
    IFS=$'\n'
    for id in $(ps aux | grep -P -i $1 | grep -v "grep" | awk '{printf $2" "; for (i=11; i
]]>
			http://sametmax.com/a-linterieur-de-mon-bashrc/feed/
		24
	4238	
		
		“ERROR: VIRTUALENVWRAPPER_LOG_DIR is not set” et “ImportError: cannot import name urandom”
		http://sametmax.com/error-virtualenvwrapper_log_dir-is-not-set-et-importerror-cannot-import-name-urandom/
		http://sametmax.com/error-virtualenvwrapper_log_dir-is-not-set-et-importerror-cannot-import-name-urandom/#comments
		Sat, 17 Nov 2012 13:22:04 +0000
		
				
		
		
		

		http://sametmax.com/?p=3122
		
				Petits bugs pour virtualenwrapper sous Ubuntu. Ca se corrige facilement. 

Ajoutez dans .bashrc pour corriger le premier:

export VIRTUALENVWRAPPER_LOG_DIR="$WORKON_HOME"
export VIRTUALENVWRAPPER_HOOK_DIR="$WORKON_HOME"

Pour le second, il faut relancer la création de l’env, sur l’env lui-même. Si votre env s’appelle “mon_env”, faites:

mkvirtualenv mon_env

Il faut les mêmes paramètres qu’à la création de l’env.

]]>
http://sametmax.com/error-virtualenvwrapper_log_dir-is-not-set-et-importerror-cannot-import-name-urandom/feed/ 2 3122