chimrod a écrit 1069 commentaires

  • # Des avantages et des problèmes..

    Posté par  (site web personnel) . En réponse au journal L'homme qui voulait scripter les fichiers de configuration. Évalué à 7.

    Parmi les applications que j'utilise, deux ont basés leur configuration sur Lua : awesome (WM) et luakit (browser web). Pouvoir scripter la configuration a des avantages mais aussi des inconvénients :

    Pour les avantages, c'est tout simplement génial ! Lua est très bien intégré pour chacune des deux applications, et permet de modifier tellement de choses que c'en devient un plaisir d'en modifier le comportement par défaut.

    Lua est un langage facile à comprendre, et quand les idées ne manquent pas, il est plus facile de se lancer dans un développement en lua qu'en C, avant le faire partager avec l'upstream. La séparation entre la configuration de l'appli et l'appli elle même n'existe plus, et on commence très vite à mettre les mains dans le cambouis pour adapter l'appli à ce que l'on souhaite.

    Le problème est que la gestion d'erreur est assez mal intégrée : une erreur de syntaxe et l'ensemble du script n'est pas exécuté : bon courage pour aller débugger un fichier de conf !
    Même chose si l'api lua fourni par l'application change. Awesome s'est calmé maintenant, mais je continue de croiser les doigts à chaque mise à jour en espérant que ma configuration fonctionnera toujours et que je n'aurais pas à passer une heure ou deux à tout corriger.

    Le diff est de rigueur après chaque mise à jour entre la configuration par défaut, et celle actuelle, et devient plus pénible à chaque fois que la configuration évolue.

    Je pense que ce principe de scripter les applis doit se limiter aux applications principales (les trois que j'utilise le permettant sont mon navigateur de texte, le gestionnaire de fenêtre.. et mon éditeur de texte), sinon ça devient vite le bordel. Tout dépend du temps qu'on est prêt à passer à configurer son outil.

    Bien sûr rien n'oblige à mettre le doigt dans l'engrenage, mais une fois qu'on a commencé à adapter l'outil pour notre utilisation à nous, c'est dur de revenir au comportement par défaut !
  • [^] # Re: newsbeuter

    Posté par  (site web personnel) . En réponse au journal TinyTiny RSS, autohebergement et android. Évalué à 1.

    Pourquoi partager entre les machines puisque tu peux l'utiliser en ssh ?

    C'est une vraie question, j'utilise aussi newsbeuter en ssh.

    Sinon, étant donné que le cache est une base sqlite3, il doit être possible de scripter une synchro…
  • [^] # Re: Ca tombe bien

    Posté par  (site web personnel) . En réponse au journal Debian Squeeze en février ?. Évalué à 2.

    Cela me fait penser à un problème rencontré avec la caisse d'épargne : le code de la page n'était pas complet avec les navigateur webkit ( des fonctions javascripts nécessaire au login étaient absentes. )

    As tu essayé de [1]changer la signature de ton navigateur ? Cela as résolu mon problème de mon côté.

    [1] http://wiki.debian.org/Iceweasel#UserAgentString
  • [^] # Re: DNS

    Posté par  (site web personnel) . En réponse au journal L'expérience .42 - Un TLD hors de la tutelle de l'ICANN. Évalué à 2.

    de manière permanente dans /etc/resolv.conf
    je l'ai mis dans /etc/resolvconf/resolv.conf.d/head

    Oui tu as raté quelque chose ! Les fichiers de /etc/resolvconf/resolv.conf.d/ servent de template pour construire le resolv.conf.
  • [^] # Re: Remplacement des skin trouées.

    Posté par  (site web personnel) . En réponse au message Revendeur skins typematrix 2030. Évalué à 1.

    Oh, tu viens de leur faire perdre un achat !

    J'ai aussi ce problème, et j'hésitais à en racheter ( même si la skin se déchire, cela reste un produit de qualité et je ne regrette pas du tout mon achat ). J'ignorais qu'il y avait une « garantie » sur le matériel.

    Merci !
  • [^] # Re: Article 42

    Posté par  (site web personnel) . En réponse à la dépêche Revue de presse de l'April pour la semaine 51 de l'année 2010. Évalué à 1.

    Plus sérieusement, alors que chaque fabricant est en train de faire sont « store » plus ou moins fermé, j'imagine très bien la continuité de ce cloisonnement avec des noms de domaines associés, qui ne pourront être accédés que depuis les machines/OS concernés…
  • [^] # Re: Il ne faut pas dire closed-source

    Posté par  (site web personnel) . En réponse au journal NX devient closed-source. Évalué à 1.

    Essayons de décomposer :

    Privateur =

    Priv(er) + ateur = qui prive

    ou encore :
    V + ateur = qui V

    exemple :

    cultiver + ateur > cultivateur, qui cultive
    agréger + ateur > agrégateur, qui agrège.
    ( et j'en passe )

    Le mot en lui même n'est peut être pas français, mais au moins sa construction l'est…

    Bon maintenant Bravitude. D'après le wiktionnaire « sentiment de bravoure » que je résume ainsi (en passant par l'adjectif ) :

    A + itude = sentiment d'être A

    cherchons des exemples :
    nègre + itude > négritude, sentiment d'être nègre.

    Ok, y'en a d'autre ? Je ne vois pas, mais j'ai pas non plus cherché à explorer tout le lexique. Autant pour privateur le mot suit une règle de construction que l'on retrouve par ailleurs en français, autant pour bravitude, même sa règle de construction est marginale. Je ne pense pas qu'on puisse placer les deux mots sur le même pied d'égalité ( parmi les néologismes s'entend… )

    [http://fr.wiktionary.org/wiki/bravitude]
  • [^] # Re: Contraintes incompatibles

    Posté par  (site web personnel) . En réponse au message Un tiling window manager que je comprends. Évalué à 2.

    Avec Awesome et les modes « tile* » [1], tu as la possibilté de redimensionner avec la souris ( ctrl + clic droit ) ou le clavier CTRL+H, CTRL+L.

    Effectivement ça ne fonctionne pas en « spirale » ou « fair » mais je ne vois pas trop l'intérêt de les utiliser.

    En tiling, il est plus interressant d'avoir une ou deux fenêtres ( limite 3 ) ouvertes, et 10 bureaux différents (« tags ») que 10 fenêtres sur un bureaux… Les racourcis claviers sont là pour nous rendre ensuite la vie plus facile — par exemple lier la touche «mail » du clavier à l'affichage du tag « mail ». Dans le cas ou le tag n'existe pas, le créer et lancer ton client.

    [1] voir les images dans : /usr/share/awesome/themes/default/layouts
  • # Format PDF ?

    Posté par  (site web personnel) . En réponse à la dépêche WWF : interdiction d'imprimer des documents. Évalué à 5.

    Parce que je ne m'en étais jamais rendu compte et que le dessin est sorti récemment, cela m'a fait tiquer dans la lecture de la dépêche :

    http://geekandpoke.typepad.com/geekandpoke/2010/11/pedantic-(...)

    Imprimez le à votre convenance !
  • [^] # Re: Haaaa....

    Posté par  (site web personnel) . En réponse au journal Firefox me gave!. Évalué à 3.

    Pour répondre sérieusement à un commentaire qui ne l'est pas…

    elinks est bien évolué ( scripts externes en lua etc.), mais n'est pas capable de gérer le DOM, et c'est bloquant pour certains cites qui utilisent ajax. Je ne peux pas me logguer sur le site de ma banque à cause de ça.

    Sinon c'est sûr que la navigation en texte est agréable.
  • [^] # Re: Nul

    Posté par  (site web personnel) . En réponse au journal Typematrix (en français) is back !. Évalué à 2.

    Et c'est aussi très hygiénique, on est sûr que rien ne vient se glisser entre les touches du clavier, et il suffit de souffler/retourner le clavier/passer un coup de chiffon pour la nettoyer.
  • [^] # Re: debug.com

    Posté par  (site web personnel) . En réponse au journal Patch de binaire pour faire tourner Medal of Honor: Allied Assault sous Linux. Évalué à 1.

    Merci je savais pas que c'était un virus, j'avais entendu parler de l'effet et je m'étais amusé à le refaire…

    Je vais essayer de voir si je peux retrouver mon code est celui du virus pour comparer. :)
  • [^] # Re: debug.com

    Posté par  (site web personnel) . En réponse au journal Patch de binaire pour faire tourner Medal of Honor: Allied Assault sous Linux. Évalué à 1.

    Ça me rappelle le temps où j'utilisais debug.com

    J'ai voulu tester mais le site a été racheté depuis…
    ---> []

    Moi c'était un programme résident qui faisait tomber les lettres dans le DOS et les laissaient s'accumuler en bas de l'écran… Qu'est ce que c'était bon enfant à l'époque (avant que je découvre que les programmes résident pouvaient faire BEAUCOUP d'autre choses) !
  • # Test du PC portable Magazine : Linux et Open Source, le guide ultime

    Posté par  (site web personnel) . En réponse à la dépêche Revue de presse de l'April pour la semaine 40 de l'année 2010. Évalué à 3.

    Je suis désolé, mais cet article n'en est pas un : le titre parle de « test », mais aucun lien entre le titre et le contenu (qui se contente de reprendre l'édito du magazine) et il n'y a aucune information sur le magazine (à part le prix qui me paraît très cher).

    Je pense bien que ce genre de magazine ne trouvera pas forcément son public ici, mais je trouve que cet article n'a pas à figurer dans une revue de presse dans le sens ou cet article n'apporte aucune information sur le sujet…

    Sinon, je profite de ce commentaire pour dire que j'apprécie beaucoup ces revues de presse, surtout pour ce côté « regard extérieur » sur le monde du logiciel libre.
  • [^] # Re: ShoreWall

    Posté par  (site web personnel) . En réponse au message Routage openvpn. Évalué à 1.

    Voila une solution ( à compléter )

    On commence par donner une marque à tous les paquets qui sont en provenances d'un port donné :

    iptables -t mangle -A OUTPUT -j MARK -p tcp --sport 80 --set-mark 80

    Ensuite on route les paquets avec cette marque vers la passerelle qui nous intéresse ( nécessite iproute2 )

    ip rule add fwmark 80 table 200
    ip route add table 200 default via 192.168.0.254

    Cela permet au port de répondre sur une IP (pas les deux), mais c'était pour moi la priorité…
  • [^] # Re: Ou alors utiliser le BÉPO

    Posté par  (site web personnel) . En réponse au journal Mais où sont passés les cadratins ?. Évalué à 1.

    Il s'agit d'une touche morte, que tu définie toi même (par exemple alt-gr ou contrôle droit). Elle permet de faire de la composition de lettre :

    « Compose » + ' - e = é
    « Compose » + ` - e = è
    « Compose » + . - . = …
    « Compose » + s - s = ß

    C'est utile dans certaines conditions (portables qwerty…) mais bon, ça reste une touche morte…
  • [^] # Re: Proverbe

    Posté par  (site web personnel) . En réponse au journal Enflage primaire. Évalué à 0.

    J'ai bien dit « diaspora » . Le projet diaspora a bien réussi à récolter des fonds alors qu'ils n'avaient aucun code à proposer — et n'en a même eu aucun pendant longtemps, voir les interrogation que ça a posé ici. Mais ça n'a pas empêché le buzz dans les médias (ma copine m'avait montré un article sur ce sujet dans un glamour ou cosmopolitain je ne sais plus). Pourquoi ? Je ne sais pas, il faudrait voir d'où proviennent les dons (je pense que ce ne sont pas des particuliers qui ont donné, mais je ne vais pas m'avancer sans infos), et pourquoi les gens ont donné.

    Tout ça pour dire que je ne crois pas que l'esprit du don ait disparu dans le libre, il change peut être de forme : flattr pour le particulier, les summer code pour google (j'essaie de lister les formes de subventions «récentes » qui ne soient pas gros chèque).

    Oui j'ai dit diaspora, j'aurais pu dire sintel aussi (mais le jeu de mot aurait été plus difficile) : les vidéos blender sont toujours pré-achetées, avant même que l'on sache de quoi va parler le prochain film, et ça marche…

    Bref, je ne suis pas pessimiste pour les dons dans les projets libres
  • [^] # Re: Proverbe

    Posté par  (site web personnel) . En réponse au journal Enflage primaire. Évalué à 2.

    C'est sûr, ça serait vraiment une diaspora de tous les projets libres qui arrivent à faire du buzz si il fallait proposer quelquechose avant de recevoir des dons…
  • # Précisions

    Posté par  (site web personnel) . En réponse au message Routage openvpn. Évalué à 1.

    Voici quelques précisions, en terme « iptable », peut être est ce plus clair :

    il faudrait que les nouvelles connexions sortantes passent par le VPN.
    il faudrait que les connexions existantes ou relatives sortantes passent par la même interface que l'entrée.

    Cela devrait être faisable en « taguant » les connexions avec iptable, je vais essayer de voir ça…
  • [^] # Re: Texte simple

    Posté par  (site web personnel) . En réponse au journal Des messages tout encramillés. Évalué à 1.

    Plus sérieusement (quoique, dans certaines situations...), le HTML dans un mail, en entreprise, me sert à *une* chose : mettre en gras.

    C'est amusant, tu as écrit dans ton message comment le faire dans un mail simple : mettre ton texte entre astérisques (*), tout bon lecteur de courrier /devrait/ afficher le texte en gras…

    Utiliser des slashs pour mettre en italique, et undercore pour souligner, ça ne charge pas le mail, et ça suffit pour donner de l'emphase au texte…
  • [^] # Re: iTrt eudc moemtniaer

    Posté par  (site web personnel) . En réponse au journal SOLR-2128: full param substitution for function queries. Évalué à 3.

    Alors que j'ai lu ton commentaire ce matin, je ne viens d'en comprendre le titre que maintenant… Pour la peine je te plusse !
  • [^] # Re: Awesome

    Posté par  (site web personnel) . En réponse au journal Softs qui déchiraizent \o/. Évalué à 2.

    Awesome
    Elinks
    Vim

    Pareil, je n'utilise pratiquement plus la souris avec awesome, et j'utilise de plus en plus la console.

    Naviguer en mode texte donne une lecture vraiment différente des sites, pas de pub, pas d'images, juste le contenu rien de plus ( je l'utilise en sortie de mon lecteur RSS ).

    Là encore lua fait des merveilles, et tout est très paramétable.
  • [^] # Re: Aller sur Internet

    Posté par  (site web personnel) . En réponse au journal Internet n'est pas le web. Évalué à 2.

    lors 'allez sur internet' ne me semble pas être une expression inexacte

    Tout à fait, on devrait dire « aller à internet », je ne vois pas comment les gens font pour s'étaler SUR internet…
    Attend, on me fait signe que je me suis trompé de sujet. Ah ? Désolé pour le bruit…
  • [^] # Re: arf

    Posté par  (site web personnel) . En réponse au message Accès à la liste des méthodes de l'intérieur d'une classe. Évalué à 3.

    Si j'ai lu correctement, la méthode func est "bound"
    mu !

    En fait a1.func est liée, mais A.func ne l'est pas. On ne peut pas évoquer la méthode func sans évoquer la manière dont celle-ci a été invoquée.

    Quand on utilise im_func sur une méthode liée, python nous renvoie la fonction ( non plus la méthode ).

    >>> a1.func.im_func
    <function func at 0x7f9543c1b5f0>

    >>> A.func.im_func
    <function func at 0x7f9543c1b5f0>

    Aucune des deux n'est liée à la classe en question, c'est pourquoi on peut passer une autre instance d'un autre objet, voire même d'une autre classe :


    >>> class A(object):
    ........def __init__(self, name):
    .............self.name = name
    ........def func(self):
    .............print self.name
    ...
    >>> class B(object):
    ........def __init__(self, name):
    .............self.name = name
    ...
    >>> b1 = B(1)
    >>> A.func.im_func(b1)
    1


    C'est vraiment dommage que la doc python n'aborde pas ce point, car c'est vraiment important dès qu'on va un peu en profondeur dans le langage.

    Je n'ose même pas imaginer comment un tel découplage pourrait-être exploité...

    Pour ma part j'en avais eu besoin pour mettre en place un système d'évènement dans une appli. La difficultée étant de sauvegarder la méthode pour l'appeller lors du déclenchement de l'évenement, tout en gardant une référence faible sur l'objet auquel la méthode est liée…
  • [^] # Re: arf

    Posté par  (site web personnel) . En réponse au message Accès à la liste des méthodes de l'intérieur d'une classe. Évalué à 2.

    Un autre exemple un peu plus parlant :

    >>> class A(object):
    ........def __init__(self, name):
    .............self.name = name
    ........def func(self):
    .............print self.name
    ...

    On crée deux instances :

    >>> a1 = A(1)
    >>> a2 = A(2)

    Les trois appels renvoient la même valeur :

    >>> a1.func()
    1
    >>> A.func(a1)
    1
    >>> a2.func.im_func(a1)
    1

    Pourtant, la méthode (unbound) de classe n'est pas le même objet que la fonction associée à la méthode d'instance :

    >>> a2.func.im_func == A.func
    False