Planet

Django logo bugSuite au commentaire de Narbonne sur l'article d'hier "Quelques outils utiles pour django" je livre aujourd'hui la rapide manipulation permettant d'utiliser bpython avec django. Bpython est un terminal python avancé. En temps réel il colore, indente, propose les méthodes liées aux objets courants, via l'introspection. Il contient un historique, et des commandes rapides pour enregistrer et "pastebiner" le contenu du terminal sans le quitter. Bref on gagne du temps.

Attention, l'ensemble des manipulations qui vont suivre peuvent rendre votre système d'exploitation Ubuntu instable. L'utilisation du compte admistrateur (commande sudo...) suscitent des risques pour lequel je décline toute responsabilité.

Installer bpython dans Ubuntu

Il existe trois méthodes, je vous livre ici la plus rapide, la plus simple, et la plus sûr pour votre système:

  • Depuis un terminal, tapez : sudo aptitude install bpython

Utiliser bpython dans django

  • Créer dans votre dossier personnel le fichier ~/.pythonrc et placer dans celui-ci :
try: from django.core.management import setup_environ import settings setup_environ(settings) print 'Importation de la configuration django' try: exec_strs = ["from %s.models import *"%apps for apps in settings.INSTALLED_APPS ] for x in exec_strs: try: exec(x) except: print 'Echec de l'importation pour %s' %x print 'Importation des modèles django' except: pass except: pass
  • Editer, toujours depuis votre dossier personnel, le fichier /.pythonrc@@
  • Enfin relancer votre terminal (un onglet de guake dans mon cas)

bpython pour django

Via cette manipulation, bpython devient une alternative très intéressante vis à vis du couple "shell_plus + ipython".'' Billet conçu d'après l'article Using python shell ..''

EDIT: Sur IRC , Alexis propose le snippet bpython

Je me suis récemment rendu compte d'un problème relativement embêtant. Ce dernier est lié à la reconnaissance du clavier de mon Asus EeePC 1000 HE. En effet, il m'était impossible (du moins avec la combinaison de touches normale Alt Gr + 8) d'utiliser le \ (backslash) dans un éditeur de texte. Chose assez embêtante pour un programmeur quand il a besoin d'utiliser le fameux \n (ou encore \r ou \t) dans ses printf() par exemple.

Une solution existe, heureusement, et elle est simple. Pour cela, on va dans Système > Préférences > Clavier. On se rend ensuite dans l'onglet Agencement puis on change le modèle du clavier pour utiliser Portable Asus.


Voilà, simple et efficace.

Django logo bugTravaillant désormais depuis plus de neuf mois avec le framework django sur le prochain logiciel Opquast, je me permets, aujourd'hui, de fournir très modestement quelques retours d'expérience. Naturellement, toutes les étapes, les logiciels présentés ci-dessous sont compatibles avec la distribution Ubuntu. Pour MacOsX de simples adaptations semblent suffisantes, enfin pour Windows je vous laisse canoter. Cet article présente l'ensemble des outils me permettant de "débugger", tester plus rapidement du code "django / python". Attention, l'ensemble des manipulations qui vont suivre peuvent rendre votre système d'exploitation Ubuntu instable. L'utilisation du compte admistrateur (commande sudo...) suscitent des risques pour lequel je décline toute responsabilité.

Le terminal python de base

De base, Django fournit un outil, certes basique mais ô combien utile, le "TERMINAL". Ce dernier se lance via la commande python manage.py shell, uniquement si django est installé . Via l'interpréteur intéractif, le shell ou terminal, vous pouvez tout tester, instanciation de classe, concaténation de chaine, boucle for, conditions... Très rapidement on se rend compte qu'il manque : la coloration syntaxique pour s'y retrouver, un historique des commandes précédemment tapées, les bons imports initiaux, l'indentation automatique, la complétion. Bref on est face au bon vieux terminal type MS-DOS (allez, ...en un peu mieux).

Installation ipython

Il manque l'indentation automatique, l'historique, la complétion des objets, la coloration, aucun problème installez ipython via synaptic ou via la bonne vieille commande habituelle sudo aptitude install ipython. Aucune configuration supplémentaire l'interpréteur python est automatiquement "amélioré" tout comme l'interpréteur django, en effet ce dernier repose sur celui de python.

Mise à jour de django shell vers django shell_plus

  1. Télécharger le pack contenant shell_plus à l'adresse django-command-extensions
  2. Dézipper l'archive précédemment récupérés
  3. Via un terminal, tapez la commande sudo python setup.py install (cela fonctionne si django a été installé de la même manière, ou est situé dans /usr/local/lib/python2.6/dist-packages/)

Shell_plus

Au lancement de la commande l'ensemble des modules déclarés dans votre fichier de configuration settings.py sont automatiquement chargés, voir screenshot ci-dessus. On gagne un temps incroyable

Connaître les attributs et les méthodes d'un objet

Cette solution est très simple, mais pour l'instant je n'ai pas trouvé mieux.

  1. Démarrez un terminal django : python manage.py shell_plus
  2. Instancier votre objet : article = Article()
  3. Saisissez article. puis appuyer sur la touche "Tabulation de votre clavier", le terminal liste ainsi l'ensemble des attributs, méthodes disponibles

Shell plus , listing des attributs

Guake : Un terminal toujours sous la main

Enfin pour aller plus loin, je vous renvoie à l'installation de l'excellent terminal guake via sudo apt-get install guake. Guake via le raccourci "F12" est disponible depuis n'importe quel bureau, hautement pratique, surtout si comme moi, vous utilisez plusieurs bureaux.

20 Janvier 2010 à 05:10

Ailurus : le coteau suisse d’ubuntu via crowd42

Il vous arrive parfois après avoir installé votre système d’exploitation favori, que vous ne trouvez pas parmi les paquets installés ou proposé dans les dépôt officiels les logiciels dont vous avez besoin, Ailurus est là pour remédier ça.

En effet, Ailurus vous permet de compléter et de personnaliser l’installation de votre installation d’Ubuntu.

Quelques fonctionnalités d’ailurus :

  • test de rapidité des mirroirs
  • installation offline des packages
  • infos sur le systéme, la distribution et l’utilisateur
  • ajout de dépots supplémentaires

Pour l’installer il suffit d’aller récupérer le paquet .deb et l’exécuter ou bien d’ouvrir votre Terminal et entrer la ligne de commande suivante :

wget http://ailurus.googlecode.com/files/ailurus_10.01-0revision1_all.deb

Puis, une fois le paquet téléchargé vous tapez toujours dans votre terminal :

sudo dpkg -i ailurus_10.01-0revision1_all.deb

Enjoy it.

Cet article Ailurus : le coteau suisse d’ubuntu est apparu en premier sur crowd42.

No related posts.

I have been a highly screen + irssi user for some years running on my server and then, just sshing to it. Apart from the high latency on typing you can get when your connection begins to lag, everything fulfil my need.

However, last week, pitti told me that he was using a wonderful feature which is called "smart filtering". If you are a long time IRC user and particularly if you go to crowded channels, you know how seeing all this join/part messages can be annoying. Of course, most of IRC clients can hide all join/part/quit/away messages on selected channels.

But smart filtering brings the concept a little bit further: you can tell "show me /quit /join only if the user was speaking on the channel in the last xxx minutes". Great to not speak into the wild when you're not always looking at your channel user list every minute! Unfortunately, it seems there is no such extension for irssi. As writing a plugin in perl is not my taste, I moved to weechat where this feature has been implemented. It was the right time to try as well bip (an IRC proxy).

bip gaves me some hard time because intrepid[1] version is buggy: it preprends backlogs with - (and xchat doesn't highlight the channel if a message begins with "-") and adds "+" to other messages. Well, updating it just fix it, but it took some time to figure out (xchat was hiding those - et +).

Once done, I tried weechat, which seems to be a very great IRC client in a modular architecture. No more latency in typing things as the client is now local and connecting to my bip proxy. The only annoying part is that I'm connected to 4 different IRC networks (and consequently, 4 bip networks) and buffers[2] aren't properly ordered after restarting it. I have to run /layout apply 3 times to get the correct ordering at each start :( This is a known bug.

Then, I installed the notification script. The annoying bit for me was that I got spammed with too many notifications:

  • you are notified everytime someone highlight you in a channel (seems logical for a notification script)
  • you are notified at each private message someone sent you!

And there is where the nightmare begin: if you begin with a long private conversation to someone, you'll get spammed for endless time (especially when notification are shown for 10 secondes at each message!). To fix that, I've just hack quickly on notify.py script (yes, it's in python) to add a smart_notification option (off by default).

If you run: /set plugins.var.python.notify.smart_notification on then smart notification is activated. That means that you won't get notified if someone is either highlighting you in the current channel you have a buffer opened to, or in your current private conversation. That means, logically, you won't get notification if you're looking at the channel you are currently looking at. You'll only see the red/yellow/whatever color line weechat highlight your text. Of course, if your are highlighted not in your current buffer (someone is beginning a private conversation you didn't switch to), you'll still be notified. The idea is only to warn you if you have something that needs to get your attention you're not currently looking at right now, sweet isn't? :)

The new version (0.0.4) is sent upstream, if it won't get it before lucid, I'll upload it to Ubuntu to get it there.

You can find this new version there: notify.py

Notes

[1] yes, my server runs intrepid, I'll reinstall a clean architecture when lucid will be released

[2] name of channel or private window screen

J'ai décidé à changer de matériel et faire évoluer mon pc. Pour avoir une trace écrite de toute la configuration que j'effectue et si possible mettre le moins de temps possible à réinstaller mon PC, je me suis décidé à faire une doc ( si si, ca m'arrive ). Il existe quelques actions que j'ai noté dans un précédent post, que je ne reprendrais pas ou ne ferais que référence.

[1]

warning.pngAttention, certaines manipulations ne sont pas standard et peuvent altérer la stabilité de votre système

Matériel

Rien de bien exceptionnel

  • Carte mère : ASUS P5Q DELUXE
  • CPU : Intel Core 2 Quad Q9400
  • Carte son m-audio audiophile 24/96
  • Carte graphique geforce 210

Tout est assez bien reconnu. Seule la carte son m'a posé problème .

carte son

m-audio-audiophile-2496.1227993.jpg

Alors la, ce fut un grand mystère et moment de solitude... j'ai désactivé la carte son de la carte mère via le bios après l'installation. Après ca, pulseaudio ne me trouvait aucun périphérique :-( Quelques reboots plus tard, ma carte audiophile était reconnue. Je ne sais pas du tout pourquoi mais ca ma donné envie de découvrir le fonctionnement de pulseaudio (question de survie...)

Pour ce qui est du séquenceur midi, je n'ai pas encore testé. A vori si je peux utiliser le séquenceur natif ou timidity ( je préférerai le premier choix). Si la configuration s'avère un peu compliquée, elle finira sans doute dans un prochain post.

Installation des logiciels

Volontairement, je ne décrirais pas en détail la liste des paquets installés car je l'ai décrit dans un précédent article qui est assez récent.

Voici en substance, la commande que j'ai lancé :

sudo apt-get install mplayer mozilla-mplayer w32codecs ubuntu-restricted-extras sun-java6-jdk sun-java6-jre sun-java6-plugin gstreamer0.10-plugins-bad gstreamer0.10-plugins-bad-multiverse openssh-server easytag tuxguitar tuxguitar-jsa gnome-do gnome-do-plugins htop screen nautilus-open-terminal nautilus-script-audio-convert nautilus-gksu nautilus-script-manager nautilus-wallpaper nautilus-filename-repairer lottanzb lilypond geany frescobaldi lm-sensors sensors-applet homebank filezilla gparted homebank grsync

Installation de la libdvdcss

$ sudo /usr/share/doc/libdvdread4/install-css.sh

La souris

souris de type MX100. je n'arrive toujours pas à faire fonctionner le clic via la molette alors que ca fonctionnait sur mon ancien pc J'ai suivi la documentation et un très bon post de motard14 sur le forum ubuntu-fr. Voila la configuration présente dans mon fichier $HOME/.xbindkeysrc

"/usr/bin/xvkbd -xsendevent -text "\[Escape]"" b:2 "/usr/bin/xvkbd -xsendevent -text "\[Alt_L]\[Left]"" b:8 "/usr/bin/xvkbd -xsendevent -text "\[Alt_L]\[Right]"" b:9 "/usr/bin/xvkbd -xsendevent -text "\[Control_L]\[w]"" b:10 "/usr/bin/xvkbd -xsendevent -text "\[Prior]"" b:11 "/usr/bin/xvkbd -xsendevent -text "\[Next]"" b:12 "echo ButtonPress 6 ButtonRelease 6 | xmacroplay -d 0 :0.0" b:13 "echo ButtonPress 7 ButtonRelease 7 | xmacroplay -d 0 :0.0" b:14

Pensez à rajouter xbindkeys dans les logiciels à lancer en début de session !

Configuration de SSH

J'ai désactivé le login SSH pour l'utilisateur root :

Dans le fichier /etc/ssh/sshd_config

PermitRootLogin No

Logiciels tiers

Installation de virtualbox

j'ai installé la version PUEL ( elle n'est pas libre mais j'ai besoin du support USB) dont la procédure est décrite ici

Vim

Voici ce que j'ai effectué pour installer et personnaliser VIM.

$ sudo apt-get install vim $wget http://formation-debian.via.ecp.fr/fichiers-config/vimrc $sudo mv /etc/vim/vimrc $ mv vimrc /etc/vim/

Thunderbird & Songbird

J'ai installé thunderbird 3 ainsi que songbird dans le répertoire /usr/local. Comme indiqué dans un de mes précédents posts, j'ai ajouté thunderbird dans le menu de l'indicator-applet et inséré les éléments correspondants dans le menu principal

Pour thunderbird, j'ai suivi le chapitre correspondant à ma version d'OS présent dans la doc

Notes

[1] Lien original sur flickr. Cette image est sous licence CC By NC ND

14 Janvier 2010 à 21:42

Lettre à ma communauté via Reponses.net

En cette période de voeux et de bonnes résolutions, je voudrais adresser une lettre à ma communauté. Ceux qui me connaissent auront de suite compris que je parle de la communauté Ubuntu, en particulier de la communauté Ubuntu-fr.

Oui je parle de MA communauté, cela n'est pas une marque de possession de la part d'un président un peu possessif :), mais plutôt d'une appartenance... On parle de SA famille, j'ai donc volontairement décidé de parler de MA communauté.

Cette lettre (ou plutôt ce billet sur mon blog) a pour unique vocation de remercier ceux qui ont fait qu'en 2009 nous avons eu une année si pleine, avec autant de bons moments. La fin d'année a été exceptionnelle : environ 30 Ubuntu Party ont eu lieu partout en France pour fêter la sortie de la nouvelle édition (Karmic Koala) et tout cela n'a été possible que grâce à un travail et un investissement de tous. Le plus remarquable étant les succès rencontrés. Pour ne citer que 2 chiffres : 5000 personnes (dont Mark Shuttleworth) lors de notre WE parisien et 700 lors de l'après midi dédiée à Toulouse... Si je vous ai parlé de MA communauté au début c'est que tout cela est le résultat du travail d'une communauté fabuleuse dont je ne suis qu'une des figures visibles. Tous ses membres méritent leur part de mérite dans ces évènements, et je me sers de cette lettre pour les remercier...

La nouvelle année qui commence est déjà pleine de nouvelles actions et de nouveaux défis et je suis sur que nous allons tous ensemble les relever. Je vous adresse donc mes meilleurs voeux, et plus généralement à tous ceux qui nous soutiennent au jour le jour en s'intéressant aux logiciels libres.

Si vous comptez acheter un nouvel ordinateur et que vous utilisez Ubuntu, choisissez le bien ! Vous voulez sûrement que le matériel fonctionne nativement sous Ubuntu et peut-être que vous ne voulez pas acheter Windows.

  • Vous utilisez Linux mais vous voulez acheter Windows car êtes encore sous l'emprise de certains logiciels propriétaires :
    Achetez le où vous voulez mais faites des recherches sur internet en utilisant pour mots clés la marque, le modèle et votre distribution. Vous tomberez peut-être sur des messages d'un forum expliquant des problèmes éventuels. Consulter également le site UbuntuHCL.org (merci à brazz pour le lien), c'est une base de données contenant les matériaux compatibles avec Ubuntu. Si vous possédez déjà une version de Windows qui n'est pas sous licence OEM, vous pouvez la réutiliser et ne pas en acheter une autre (voir plus bas).
  • Vous voulez un ordinateur sans Windows :

Les produits sans Windows des petits constructeurs sont souvent plus cher que ceux avec Windows des gros constructeurs grâce à leur économie d'échelle. Certain d'entre vous préféreront acheter mois cher et "jeter" le système d'exploitation. Je pense qu'il vaut quand même mieux choisir ces petits constructeurs pour tenter d'inverser la tendance et pour ne pas augmenter le chiffre d'affaires de Microsoft inutilement.

Mise à jour du 14/01/2010 : Réécriture du billet.

Mise à jour du 17/01/2010 : Ajout du lien pcubuntoo.

J’expliquais, lors de mes premières impressions d’Android 2 sur le Motorola Milestone, qu’il était impossible d’installer un fichier .apk sans accepter les conditions d’utilisation du market ni configurer un compte gmail.

C’est en fait possible, grâce à l’outil adb du SDK Android, à partir la connexion USB de l’ordinateur.

Configurer le téléphone

Pour que l’outil d’installation puisse fonctionner, il faut activer l’option Paramètres > Applications > Développement > Débogage USB sur le téléphone.

Configurer l’ordinateur

Il faut télécharger Android SDK, malheureusement non libre.

Sous GNU/Linux (plus précisément Ubuntu 9.10, adaptez selon votre distribution), voici comment l’installer et permettre la reconnaissance du Motorola Milestone (plus d’infos ici) :

sudo tar xzf android-sdk_r07-linux_x86.tgz -C /opt sudo ln -s /opt/android-sdk-linux_x86/tools/adb /usr/local/bin echo 'SUBSYSTEM=="usb", SYSFS{idVendor}=="22b8", MODE="0666"' | sudo tee /etc/udev/rules.d/51-android.rules sudo service udev reload

Si vous utilisez un système 64 bits, vous aurez besoin également besoin de ia32-libs :

sudo apt-get install ia32-libs

Vous pouvez maintenant brancher votre téléphone sur le PC en USB. Pour vérifier que tout fonctionne :

$ adb devices List of devices attached 040140621600C00D device

Installer une application

En ligne de commande

Pour installer une application à partir de l’ordinateur, rien de plus simple :

$ adb install -r ConnectBot-svn-r466-all.apk 2343 KB/s (642578 bytes in 0.267s) pkg: /data/local/tmp/ConnectBot-svn-r466-all.apk Success

(-r permet d’écraser si l’application est déjà installée)

À partir d’un gestionnaire de fichiers

Vous pouvez ensuite ajouter la possibilité d’installer les .apk graphiquement à partir de votre gestionnaire de fichiers. Si vous utilisez nautilus, vous pouvez jouer avec nautilus-actions :

Voici la commande de mon action nautilus (j’ouvre un xterm pour avoir le résultat de l’installation, si vous avez mieux, n’hésitez pas) :

xterm -T adb -e 'cd "%d" && /usr/local/bin/adb install -r "%f"; sleep 5'

Conclusion

J’ai réinitialisé mon téléphone, il n’a plus de compte gmail associé et je n’ai pas accepté les conditions du market, ce qui ne m’empêche donc plus d’installer les applications dont j’ai besoin.

Même pour ceux qui veulent garder leur compte ou utiliser le market, c’est quand même plus rapide d’installer un .apk grâce à un clic-droit, « installer » à partir du gestionnaire de fichiers plutôt que de copier le .apk sur la carte SD, débrancher le câble USB, aller dans une appli qui va chercher le fichier et cliquer sur « installer ».

09 Janvier 2010 à 13:39

Nouvelle année, nouveau travail. via DidRocks'blog

La nouvelle année arrive et il était temps de changer de vie professionnellement parlant.

Je quitte donc une société éditrice de logiciel propriétaire pour un travail plus en relation avec le logiciel Libre.

Mais pourquoi publier tout cela sur le planet ubuntu francophone et quel est le lien avec ce dernier ? Tout simplement parce que mon nouvel employeur est Canonical Ltd, sponsor officiel d'Ubuntu!

Je vais donc continuer une part de mes actions que je faisais précédemment en tant que contributeur bénévole (packager et mettre à jour GNOME dans Ubuntu) en joignant la desktop team de Canonical. Je serais également responsable du packaging de la version Ubuntu Netbook Edition (précédemment nommée Ubuntu Netbook Remix). Bref, que du bonheur de pouvoir enfin travailler à plein temps sur des projets libres, et encore plus sur Ubuntu même !

Je continuerai bien entendu à vous donner des informations sur la distribution (par exemple, le suivi des Ubuntu Developer Summit) et la vie de la communauté ubuntu-fr (restant pour l'instant secrétaire de l'association). J'essayerai de m'accorder plus de temps afin de partager ici un peu plus ce qu'il se fait sur la version de développement de la distribution.

L'année s'annonce bien en résumé, vivement lundi. :)

Pages