Tips : Debian unstable (sid) switch to Python 2.4 by default

May 27th, 2008

Edit /usr/share/python/debian_defaults

You should have something like this :

[DEFAULT]
# the default python version
default-version = python2.4
# all supported python versions
supported-versions = python2.4, python2.5
# formerly supported python versions
old-versions = python2.3
# unsupported versions, including older versions
unsupported-versions = python2.3

Update the python link

# rm /usr/bin/python
# ln -s /usr/bin/python2.4 /usr/bin/python

Update your python packages to python 2.4

Launch this command :

# pycentral updatedefault python2.5 python2.4

Pardus

May 27th, 2008

J’ai découvert cette distribution GNU/Linux il y a relativement peu de temps avec la sortie de la version 2007.2. Je l’ai tout d’abord testé sur une VM et là surprise j’ai eu un coup de cœur pour cette distribution.

Je vais maintenant essayer de décrire Pardus 2007.3.

L’installation

L’installeur est très propre et très simple. Il n’y a vraiment pas grand chose à redire à part le manque de quelques options de geek comme le choix de ses partition et de son filesystem.
Après l’installation on se retrouve avec un système très propre et très bien intégré.

L’environnement graphique

C’est clairement sur l’aspect “Desktop” que Pardus excelle et c’est en grande partie pour cela que je l’ai choisi.

L’équipe de Pardus a choisi de se baser sur KDE et non comme la plupart des grosses distributions actuels sur Gnome. Étant un grand fan de KDE je ne peux qu’applaudir ce choix. D’autant plus que Pardus a réussi a très bien intégrer KDE ce qui n’est clairement pas monnaie courante.

A part cela on se retrouve avec d’excellents outils pour configurer notre KDE.

On peut voir à gauche kaptan qui est lancé au démarrage pour une première configuration. A droite on peut voir  Tasma qui est un kcontrol amélioré.

La gestion des paquets

Voici package-manager une interface graphique découpée par catégorie et très simple à utiliser :

Elle se base sur PiSi qui est un programme en ligne qui permet de gérer,  de compiler et de créer les paquets. Cette outil est vraiment très agréable et il dispose de pas mal d’options et il ne lui manque que quelques options avancées présentes dans Debian (par exemple un équivalent d’apt-file).

Quand au packaging il est très simple à réaliser et il se fait en python et en XML. Je ne vais pas m’étendre sur le sujet car je  vais publier un article sur la question.

La gestion du réseau

C’est clairement l’autre grande force de Pardus. Le gestionnaire permet de créer des profiles et gère les câbles, le wifi et le rtc. L’interface pour le wifi est tout particulièrement performante avec la reconnaissance automatique du cryptage.

Les services

Pardus offre là aussi le choix entre une interface graphique et la ligne de commande.

Conclusion

Les points forts :

  • d’excellents outils (aussi bien graphique qu’en ligne de commande) principalement le network-manager
  • une très bonne intégration de KDE
  • un bon choix logiciel
  • une bonne reconnaissance des péréphiques avec firmware proprio
  • de bonne performance (compilation i686 oblige)
  • un excellent système de packaging
  • très bonne gestion du montage des péréphiques (exemple le NTFS est monté avec ntfs-3g)
  • tout les outils de Pardus sont écris en Python ce qui permet de diminuer le temps de code, d’augmenter la qualité et de rendre les outils plus facilement maintenable.
  • un très bon système de base

Les points faibles :

  • une mauvaise reconnaissance de l’écran pour le X.
  • ils manquent des options avancés dans l’installeur
  • il manque encore pas mal de paquet
  • il manque encore quelques petites options avancées dans les outils mais bon là je pinaille vraiment

Pour conclure Pardus est une excellente distribution pour le desktop. Elle profite pleinement de la puissance du Python. Évidemment elle n’est pas parfaite mais la plupart des problèmes sont liés à son très jeune âge.

De mon côté c’est la première fois depuis très longtemps que je me suis installé une autre distrib que Debian comme OS principale d’un de mes PC.

Les liens utilent sur KDE 4.x

May 27th, 2008

Suite à la sortie de KDE 4.0 de nombreux articles sont parus sur le web :

Configure Mailman on Debian Etch with a Postfix

May 27th, 2008

Install a Mailman with a Postfix on Debian

apt-get install postfix mailman

Configure Mailman

Add or change these lines in /etc/mailman/mm_cfg.py (example vhost : lists.example.net) :

DEFAULT_EMAIL_HOST = 'lists.example.net'
DEFAULT_URL_HOST = 'lists.example.net'
DEFAULT_URL_PATTERN = 'http://%s/'

Configure Postfix

Example with (domain : lists.example.net)

  • configure main.cf like this :
  • # See /usr/share/postfix/main.cf.dist for a commented, more complete version
    smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
    biff = no
     
    # appending .domain is the MUA's job.
    append_dot_mydomain = no
     
    # Uncomment the next line to generate "delayed mail" warnings
    #delay_warning_time = 4h
     
    myhostname = foo.example.net
    alias_maps = hash:/etc/aliases
    alias_database = hash:/etc/aliases
    myorigin = /etc/mailname
    mydestination = lists.example.net, localhost
    relayhost =
    # Relay mailman 
    relay_domains = lists.example.net
    transport_maps = hash:/etc/postfix/transport
    mailman_destination_recipient_limit = 1
     
    mynetworks = 127.0.0.0/8 192.168.15.0/24
    mailbox_command = procmail -a "$EXTENSION"
    mailbox_size_limit = 0
    recipient_delimiter = +
    inet_interfaces = all
     
    # Allow connections from trusted networks only.
    smtpd_client_restrictions = permit_mynetworks, reject_unknown_client
    smtpd_helo_restrictions = permit_mynetworks, reject_invalid_hostname
    smtpd_recipient_restrictions = permit_mynetworks, reject_unauth_destination
  • add /etc/postfix/transport with this :
  •  lists.example.net mailman:
  • Run this cmd :
  •  postmap /etc/postfix/transport
  • Restart your postfix :
  • # /etc/init.d/postfix restart

    Great your postfix is now ready !

    Configure the HTTP interface

  • Add this vhost to your apache (only tested with a Apache v2) :
  •  <VirtualHost *:80>    
        ServerName lists.example.net
        DocumentRoot /var/www/lists
        ErrorLog /var/log/apache2/lists-error.log
        CustomLog /var/log/apache2/lists-access.log combined
        <Directory>
          Options Indexes FollowSymLinks
          AllowOverride None
        </Directory>
     
        Alias /pipermail/ /var/lib/mailman/archives/public/
        Alias /images/mailman/ /usr/share/images/mailman/
        ScriptAlias /admin /usr/lib/cgi-bin/mailman/admin
        ScriptAlias /admindb /usr/lib/cgi-bin/mailman/admindb
        ScriptAlias /confirm /usr/lib/cgi-bin/mailman/confirm
        ScriptAlias /create /usr/lib/cgi-bin/mailman/create
        ScriptAlias /edithtml /usr/lib/cgi-bin/mailman/edithtml
        ScriptAlias /listinfo /usr/lib/cgi-bin/mailman/listinfo
        ScriptAlias /options /usr/lib/cgi-bin/mailman/options
        ScriptAlias /private /usr/lib/cgi-bin/mailman/private
        ScriptAlias /rmlist /usr/lib/cgi-bin/mailman/rmlist
        ScriptAlias /roster /usr/lib/cgi-bin/mailman/roster
        ScriptAlias /subscribe /usr/lib/cgi-bin/mailman/subscribe
        ScriptAlias /mailman/ /usr/lib/cgi-bin/mailman/
     
    </VirtualHost>

  • then create the document root :
  • # mkdir /var/www/list
  • go to : http://lists.example.net/listinfo and enjoy :D

Change the List creator’s (authentication) password

Just launch this cmd line as root :

# mmsitepass

Add a new ML 

You have two solutions :

  • cmd line : newlist
  • Web interface : http://lists.example.net/admin

And add the aliases (example with devel list) :

  • add this to /etc/aliases
  • ## devel mailing list
    devel:                 "|/var/lib/mailman/mail/mailman post devel"
    devel-admin:        "|/var/lib/mailman/mail/mailman admin devel"
    devel-bounces:     "|/var/lib/mailman/mail/mailman bounces devel"
    devel-confirm:      "|/var/lib/mailman/mail/mailman confirm devel"
    devel-join:           "|/var/lib/mailman/mail/mailman join devel"
    devel-leave:         "|/var/lib/mailman/mail/mailman leave devel"
    devel-owner:        "|/var/lib/mailman/mail/mailman owner devel"
    devel-request:      "|/var/lib/mailman/mail/mailman request devel"
    devel-subscribe:    "|/var/lib/mailman/mail/mailman subscribe devel"
    devel-unsubscribe: "|/var/lib/mailman/mail/mailman unsubscribe devel"
  • Launch this command as root :
  • # newaliases

Delete a ML

  • Just delete the ML but keep th archive
  • # rmlist listname
  • Delete the archive
  • # rmlist -a listname
  • Remove the mail aliases :
  • # vim /etc/aliases
    # newaliases

Install Quills using buildout

May 27th, 2008

Warning : this configuration is base on the development version of Quills please change it if you want a stable version.

First step edit your buildout.cfg.

The buildout section must look like this :

[buildout]
parts =
    plone
    zope2
    productdistros
    instance
    zopepy
    <strong>quills-products</strong>
 
# Add additional egg download sources here. dist.plone.org contains archives
# of Plone packages.
find-links =
    http://dist.plone.org
    http://download.zope.org/ppix/
    http://download.zope.org/distribution/
    http://effbot.org/downloads
    <strong>https://svn.plone.org/svn/collective/quills.core/trunk/#egg=quills.core-dev</strong>
    <strong>https://svn.plone.org/svn/collective/quills.app/trunk/#egg=quills.app-dev</strong>
 
[...]

Now in your zope instance where you want to add Quills add this :

[instance]
 
[...]
 
# If you want Zope to know about any additional eggs, list them here.
# This should include any development eggs you listed in develop-eggs above,
# e.g. eggs = ${buildout:eggs} ${plone:eggs} my.package
eggs =
    ${buildout:eggs}
    ${plone:eggs}
    <strong>quills.core</strong>
    <strong>quills.app</strong>
 
# If you want to register ZCML slugs for any packages, list them here.
# e.g. zcml = my.package my.other.package
zcml =
        <strong>quills.core</strong>
 
products =
    ${buildout:directory}/products
    ${productdistros:location}
    ${plone:products}
    <strong>${buildout:directory}/parts/quills-products</strong>

And now you just have to launch buidout and restart your zope server :

$ bin/builout
$ bin/instance_name fg

That’s all folk !

Le champagne Darty

May 27th, 2008

Le champagne Darty fait son apparition sur youtube :

Changements entre KDE 3 et KDE 4

May 27th, 2008

Son : Phonon remplace aRts

phonon-logo.png

Phonon va enfin prendre la place de artsd le serveur de son buggé de KDE 3.

Phonon permet la centralisation de l’audio et de la vidéo. Il a le grand avantage d’être une couche au-dessus de moteur de son comme xine, gstreamer, …

Phonon va être intégré dans QT 4.4.

Pour plus d’infos sur Phonon (en) : Blog de Matthias Kretz

Gestion des bus : D-Bus remplace DCOP

Pour plus d’info (en) :

Gestion du matériel : Solid remplace Mediamanger

solid-logo.png

Solid est une API qui permet une gestion des péréphiques dynamqiues un peu comme HAL mais en multi OS.

Pour plus d’info (en) : Article de linux.com

Visualiseur : Okular remplace KPDF, KDVI, KFax et KGhostview

Okular va centraliser la visualisation des fichiers PDF, DVI, ODF, DjVu, CHM et d’autres. Il permet enfin d’avoir un “viewer” commun pour KDE.

Interface : Plasma / krunner remplace superkaramba, kdesktop et kicker

Plasma permet de remplacer la gestion des widgets (superkaramba) et des pannels (kicker).
Plasma + Krunner remplacent kdesktop.

Pour plus d’infos (en) : L’article de Aaron

Graphique : Oxygen remplace Crystal

Oxygen apporte de nouvelles icones et un nouveau style.
Pour plus d’infos (en) : bog de Riccardo Iaconelli.

Orthographe : Sonnet remplace kspell2

Sonnet intégre notamment la reconnaissance automatique de la langue.

Pour plus d’informations :

Gestionnaire de fichier : ajout de Dolphin

Dolphin fait son entrer dans KDE 4 et contrairement à Konqueror (qui reste présent) il ne s’occupe que la gestion de fichier.

Bureau sémantique : ajout de Nepomuk

Nepomuk-kde est l’intégration du bureau sémantique Nepomuk dans KDE. Ce projet permet la gestion de méta donnée un peu partout dans KDE.

En vracs

KDE 4 migre sur qt 4.

Il consomme 39% moins de mémoire.

Pour plus d’infos (en) :

Your manfiles in color

May 7th, 2008

You can use most to replace less or more to read your man with colors.

To do this on Debian it’s easy :

# apt-get install most
# update-alternatives --config pager

Then test it :

$ man man

Enjoy !

Pida un IDE Python

May 7th, 2008

Pida est un ide Python qui intègre les éditeurs Vim et Emacs ! C’est pour moi une excellente chose car c’est vraiment le point faible des ide type Eclipse, Visual, Kdevelop, … Vim est clairement un éditeur extrêmement puissant utilisable entièrement au clavier et avec une grande maturité.

pida.png

Pida intègre tout les éléments de base d’un IDE : gestionnaire de projet, console, connecteur SVN, des plugins, … Mais bon Pida a ce pendant des défauts dont le principale est sa jeunesse. Mise à part cela je lui reproche 2 choses la non présence d’un outil de refactoring et de se concentrer quasi uniqument sur le PyGTK pour les interfaces graphiques.

Je pense que Pida est un IDE plein d’avenir mais si il reste trop jeune.

Python doc sidebar for Mozilla

May 7th, 2008

Edgewall (the creator of trac) create a Python Sidebar for Mozilla.

I really like it. I think it’s the best way to read the Python documentation.

python-sidebar.png