Linux (fr)

  • Les journaux LinuxFr.org les mieux notés du mois de juillet 2015 (Dépêches LinuxFR)

    LinuxFr.org propose des dépêches et articles, soumis par tout un chacun, puis revus et corrigés par l'équipe de modération avant publication. C'est la partie la plus visible de LinuxFr.org, ce sont les dépêches qui sont le plus lues et suivies, sur le site, via Atom/RSS, ou bien via partage par messagerie instantanée, par courriel, ou encore via médias sociaux.

    Bannière LinuxFr.org

    Ce que l’on sait moins, c’est que LinuxFr.org vous propose également à tous de tenir vos propres articles directement publiables, sans validation a priori des modérateurs. Ceux-ci s'appellent des journaux. Voici un florilège d'une dizaine de ces journaux parmi les mieux notés par les utilisateurs… qui notent. Lumière sur ceux du mois de juillet passé.

    Lire les commentaires

  • Que répondre quand on vous dit que Bitcoin n’est pas une vraie monnaie ? (Journaux LinuxFR)

    Bonjour à tous, je partage cet article que j'ai écrit et qui a pour "objectif" de répondre à la question : est-ce que Bitcoin peut être considéré comme une vraie monnaie ?

    Je me permets de partager l'article ici car je sais que j'y aurai de vrais bonne critiques :)

    Lire les commentaires

  • Résister par la Culture Numérique (Dépêches LinuxFR)

    Les groupes Freinet des Bouches du Rhône, du Var, du Vaucluse, des Alpes de Haute-Provence, des Alpes-Maritimes, ouvrent leur 52ème congrès de l’ICEM-Pédagogie Freinet.

    L'évènement aura lieu du 19 au 22 août 2015 de 10h00 à 17h00 à l’université d’Aix-en-Provence de Montperrin, 6 avenue du Pigonnet, 13100 Aix-en-Provence.

    L’association CercLL sera présente, notre président Hervé Allesant interviendra autour du thème « résister par la culture numérique ».

    Affiche du 52ème congrès de l’ICEM-Pédagogie Freinet

    La méthode Freinet : à la recherche de méthodes « naturelles » d’apprentissage

    Depuis le début, Freinet a cherché à relier les apprentissages scolaires aux besoins réels des enfants. En 1934, à l’époque de la construction de son école de Vence, sa propre fille Madeleine est en âge d’apprendre à lire et à écrire. Au lieu de lui donner des leçons traditionnelles, il laisse l’enfant passer insensiblement de ses dessins commentés et de l’écriture des noms qu’elle connaît à l’invention de petites histoires. Elle aborde sans difficulté la lecture des textes imprimés et prend possession de l’orthographe. La condition essentielle est de ne pas leur imposer de modèle, de les inciter à s’exprimer souvent en échangeant avec les autres. Freinet conserve tous ses essais, puis il rédige après la guerre une brochure qu’il intitule Méthode naturelle de lecture.

    Freinet généralise alors la démarche en montrant que le tâtonnement expérimental est à la base de tous les apprentissages. Il préconise de favoriser la libre découverte, par les enfants, des grandes lois du langage et de la grammaire, des mathématiques, des sciences. Pour cela, il faut inciter à beaucoup expérimenter, observer, comparer, imaginer des théories, vérifier.

    En se passionnant, les jeunes travaillent davantage et gardent un souvenir durable de leurs découvertes, alors que tant d’apprentissages mécaniques s’oublient rapidement. Surtout, une telle démarche développe la capacité de chercher, d’inventer, plutôt que de se contenter de reproduire. Et c’est cette capacité qui devient de plus en plus nécessaire dans le monde moderne.

    La notion de tâtonnement expérimental est maintenant admise non seulement avec les jeunes enfants, mais aussi avec les adolescents au cours des études secondaires et pour la formation des adultes.

    Dans le cadre du congrès Freinet http://congres-freinet.org le thème est « résister, se construire par la culture ».

    L’association CercLL sera présente, notre président Hervé Allesant interviendra autour du thème « résister par la culture numérique ».
    Photo

    Il y aura deux ordinateurs en démonstration installés avec des systèmes Libres, Ubuntu, Xubuntu, tout le long du congrès.

    Le jeudi 20 août 2015 est l’après-midi sur le thème « résistances » où Hervé Allesant fera une intervention autour de « résister en classe par la culture numérique ».

    À cette occasion, les personnes du CercLL seront là pour accueillir les gens sur les ordinateurs pour approfondir ce qu’ils auront vu.

    Plan d’accès

    Lire les commentaires

  • Série télé : Mr Robot (Journaux LinuxFR)

    C'est l'histoire d'un toxico mais pas trop, white hat le jour, justicier hacker la nuit (Néo c'est toi ?). Il utilise ses «pouvoirs» de hacker pour démasquer les méchants et les livrer à la justice (parfois), il a un ami imaginaire qui lui dit quoi [ne pas] faire(Dexter c'est toi ?)
    La journée donc, il est ingénieur sécurité dans une SSII qui a pour client une énorme multinationale "Evil Corp" (Google c'est toi ?). Bien sûr il n'aime pas ce fait car ce sont que des gros méchants qui asservissent le peuple donc la nuit il rêve de les faire tomber et y est encouragé par un groupe de hackers altermondialistes. Voilà pour le pitch, je n'irai pas plus loin pas trop vous spoiler dévoiler l'intrigue.

    Mr Robot, sortie en juin 2015, est une série américaine pour les """"geeks"""" avec des """"geeks"""". Je met plein de guillemets parce que ce mot n'a plus vraiment de sens aujourd'hui donc choisissez celui qui vous plaira … Là ou c'est intéressant c'est qu'elle évite les plus gros stéréotypes du genre : les hackers n'y sont ni gros ni boutonneux. Le héros pense que Steve Jobs est un co**ard, est un vrai asocial comme tout barbu qui se respecte sauf qu'il n'a pas de barbe, et il arrive même à séduire des filles !
    Je trouve qu'un effort a été fourni sur la vraisemblance des technologies et du domaine de la sécurité informatique : ça parle de ShellShock , de DDoS, Anonymous, il y a même un échange KDE vs Gnome ! Et quand il parle de restreindre les droits d'accès à un fichier on le voit utiliser chmod 0600 (avec quand même une inversion des paramètres …)

    Voilà, l'intrigue est prenante et je salue l'effort mentionné plus haut donc ça peut valoir le coup pendant vos soirées vidéo au camping.
    (Je n'ai vu que trois épisodes donc ça va peut-être pas durer)
    (La série est "inédite dans les pays francophones" et pour la voir légalement il faut un abonnement à un network américain mais en cherchant bien il est possible de trouver les épisodes sous-titrés …)

    Lire les commentaires

  • 10Commandes super cool a faire sur son terminal ! (Journaux LinuxFR)

    Bonjour, je fais des vidéos YouTube et j'ai fait une vidéo sur des commandes droles a faire sur son terminal, a l'heure ou je vous parle la vidéo n'est pas encore publié ( nous sommes le lundi 3 aout 2015 et il est 00:43 ) et la vidéo devrait sortir vers 01:20. Venez la voir elle est top !

    Lire les commentaires

  • Sortie de poezio 0.9 (Dépêches LinuxFR)

    Poezio est un client de messagerie instantanée en console (licence zlib) pour le réseau XMPP (Jabber) (pour plus de détails, voir la série de très bons journaux rédigés par goffi qui vont en détail dans le protocole et ce qu’il permet d’accomplir).

    Poezio est conçu pour être rapide à utiliser au quotidien, avec une utilisation se rapprochant des clients IRC bien connus comme weechat et irssi. Dans cet esprit, il est avant tout conçu pour les salons de discussions (MUC) et ne gérait même pas la connexion à un compte (on peut maintenant en avoir un) dans les premières versions, dans l’idée d’avoir le même genre de client qui ne nécessite pas de configuration préalable.

    Poezio offre néanmoins un certain nombre de fonctionnalités avancées liées à XMPP, comme la correction de messages, les accusés de réception, les message carbons (duplication de messages vers tous les périphériques), le formatage xhtml-im, une interface de debug XML complète, et bien plus encore. Un certain nombre de compromis sont malheureusement réalisés du fait de l’interface en ncurses qui limite un peu les options niveau interface utilisateur.

    Du point de vue de la sécurité, poezio force le chiffrement avec le serveur en utilisant des ciphers corrects (l’utilisateur peut cependant désactiver le chiffrement ou réduire la qualité des ciphers), fait du cert pinning (via un hash du certificat à la première connexion, et un gros avertissement si ça change ensuite). Il intègre également un plugin GPG (que personne n’utilise) et OTR.

    Côté technologie, poezio dépend généralement de la dernière version de python en date à chaque nouvelle release, ce qui est rarement du goût de debian stable.

    Sommaire

    Nouveautés de poezio 0.9

    (NdM: l'auteur du journal mathieui est membre du projet et s'exprime à la première personne dans la suite.)

    Python 3.4 et slixmpp

    Une fois de plus, la version de python requise est incrémentée (pour 3.4).

    Cette fois c’est parce que nous avons changé de bibliothèque XMPP pour slixmpp, qui est notre fork de SleekXMPP (bibliothèque utilisée auparavant), en y substituant le multithreading événementiel par asyncio. Pour comprendre les raisons de ce fork, référez-vous à l’article de louiz’ donné en lien ci-dessus. (pour résumer : un code plus lisible, pas de race conditions, plus de facilité à raisonner sur le code)

    Cela ne veut pas dire pour autant qu’on se désolidarise complètement de SleekXMPP qui reste une excellente bibliothèque, puisque slixmpp partage toujours avec elle la majorité de son code sans modification. Nous pourrons donc appliquer des nouvelles fonctionnalités et corrections sans ou avec peu de modifications, et leur envoyer les nôtres en retour également.

    Greffon OTR amélioré

    Le greffon OTR qui avait été réécrit avec poezio 0.8 manquait encore des fonctionnalités communément attendues dans un greffon de chiffrement, c’est maintenant corrigé.

    La nouvelle fonctionnalité majeure est le Socialist Millionaire’s Protocol (SMP) qui permet à deux personnes de vérifier l’identité de leur correspondant respectif, à travers un secret partagé ou une question (auparavant il était possible de vérifier les identités, mais seulement en communiquant les empreintes de clefs sur un autre canal).

    D’autres améliorations sont présentes comme un peu de traitement de HTML pour améliorer l’expérience utilisateur, et d’autres options de sécurité pour forcer le chiffrement et la négociation de session.

    OTR

    Connexion avec des certificats clients

    Poezio permet désormais de se connecter sans mot de passe à son serveur en utilisant des certificats X.509 et un mécanisme décrit dans la XEP-0178, et également de gérer ces derniers à travers les fonctionnalités décrites dans la XEP-0257.
    Avec ces fonctionnalités vous pouvez, une fois connecté, ajouter, désactiver, lister ou supprimer ces certificats du serveur.
    Un bug dans le module prosody empêche malheureusement l’utilisation de la XEP-0257 pour l’ajout d’un certificat, mais on peut le patcher en attendant.

    Commandes ad-hoc

    Les commandes ad-hoc dans XMPP permettent à un humain d’interagir avec une entité sans qu’il existe de spécification précise quant à la nature de l’interaction (en dehors XEP-0050, justement). Par exemple, prosody permet avec le chargement du bon module de charger/décharger des modules, de déconnecter ou supprimer des utilisateurs, etc, juste avec des commandes ad-hoc.
    Dorénavant, poezio peut donc lister et exécuter ces commandes ad-hoc à travers une interface dédiée.

    Couleurs de pseudo

    Auparavant, les couleurs de pseudos étaient attribuées selon l’ordre d’entrée des participants dans le salon, ce qui était mémorisable en gardant poezio ouvert plusieurs mois, mais restait perturbant quand la même personne avait une couleur différente selon le salon dans laquelle elle était.
    À partir de maintenant, les pseudos seront hashés avant d’être projetés sur la liste des couleurs disponibles, ce qui permet d’obtenir une distribution relativement uniforme, aléatoire, et surtout fixe des couleurs. Les gens qui utilisent le même pseudo partout devraient donc toujours garder la même couleur.
    Si vous préfériez l’ancien comportement (pour des raisons étranges sûrement valides), il existe toujours et peut être réactivé en changeant une option.

    De plus, Perdu a ajouté une commande pour régler définitivement la couleur d’un pseudo, donc si vous trouvez qu’une couleur attribuée ne convient pas à quelqu’un, vous pouvez le modifier.

    Accusés de réception

    Les messages envoyés par poezio demandent maintenant des accusés de réception, si le correspondant les prend en charge. Évidemment, poezio répond également aux demandes d’accusés de réception, ce qui devrait permettre aux clients mobiles plus de fiabilité.
    Ce comportement peut être personnalisé, mais il est activé par défaut. Si un accusé de réception est reçu pour un message envoyé, un caractère de validation en vert s’affichera à côté du message.

    poezio receipts

    Gestion de marque-pages

    La commande /bookmarks permettait auparavant de lister tous les marque-pages connus, de façon un peu brute. Désormais cette commande ouvre un onglet vous permettant d’éditer les marque-pages, mots de passe, et de choisir l’emplacement de stockage ainsi que l’autojoin à l’ouverture du client.

    poezio bookmarks

    Performance

    Certains bouts de poezio étaient affreusement mal optimisés. Certains le sont certainement encore, mais quelques scénarios assez communs devraient être plus rapides de façon exponentielle (par exemple rejoindre un salon avec plusieurs milliers de participants). La lenteur est habituellement invisible dans les cas normaux (comme quelqu’un utilisant poezio sur un ordinateur construit après 2002 en ayant quelques tabs ouverts), mais ça devient plus problématique quand poezio tourne sur une carte ARMv7 à faible consommation avec plusieurs centaines de salons ouverts et un flux constant de nouveaux messages ou présences.

    Greffon IRC

    louiz’ a écrit entre temps un composant IRC appelé biboumi (qui est pour moi la meilleure passerelle IRC disponible). Malheureusement, mélanger des onglets IRC et des MUC normaux est un peu perturbant, j’ai donc écrit un greffon IRC simpliste qui, une fois configuré correctement, gère l’authentification avec nickserv et la connexion aux salons ensuite, ainsi que des commandes préfixées par irc_ pour plus de fluidité dans un fonctionnement normal. Le fonctionnement interne est un hack, mais ça reste bien plus agréable que de tout faire soi-même à chaque fois.

    Reconnexion aux salons

    Le problème quand une connexion timeout ou qu’un serveur redémarre est que vous pouvez ne jamais être prévenu que vous n’êtes en fait plus dans le salon avant que vous n’essayiez d’envoyer un message ou une présence et que ce dernier vous réponde par une erreur. Cette nouvelle version introduit un mécanisme appelé le self-ping qui, une fois activé (et éventuellement configuré plus finement), fera en sorte que poezio s’envoie un ping à travers chaque salon au bout d’un certain temps d’inactivité. Si le salon lui reçoit par une erreur, il va quitter le salon (afin d’être certain de ne plus y être) puis y revenir.
    Cela devrait permettre de ne plus découvrir le matin que l’on a été déconnecté de tous les salons juste après avoir été se coucher parce qu’un serveur a redémarré quelque part.

    Et bien plus encore

    Bien évidemment, il y a plus de commits que ça (plus de 500), que ce soit pour des nouvelles fonctionnalités ou des corrections de bugs. Par exemple, des améliorations de la commande /set, une refonte de l’onglet de debug XML, une commande de destruction de salon, le passage au SHA-2 pour la vérification du certificat, etc…
    Vous pouvez regarder le CHANGELOG ou l’historique git pour plus de nouveautés.

    Packaging

    Comme dit précédemment, poezio dépend maintenant de la bibliothèque slixmpp, cette dernière dépendant d’aiodns, ainsi qu’optionnellement de cython afin d’optimiser un module (et dans ce cas libidn sera requis également, ainsi que ses en-têtes pendant la compilation).

    Contributeurs

    En dehors de moi (mathieui), louiz’, et Link Mauve, je veux remercier les autres contributeurs Perdu, Ge0rG, eijebong, Florian Duraffour et Akim Sadaoui pour leur apport en fonctionnalités et corrections.

    Bugs

    Comme toujours, si vous essayez la version et que vous remarquez un bug également non corrigé dans la version git, merci de le rapporter.

    Lire les commentaires

  • Médiapart : vidéo interview/débat sur l'économie collaborative (Journaux LinuxFR)

    Sur Médiapart ce jour, une vidéo d'interview (52 min) avec Benjamin Coriat (Économistes Atterrés) et Diana Filippova (OuiShare) sur l'économie collaborative.

    Entre les entreprises au modèle prédateur faussement désignées comme faisant partie de cette économie collaborative (par ex. Uber) et la nécessité de redistribuer la valeur aux commoners (communards ? ;-) cette vidéo présente bien le sujet, les écueils et les pistes pour aller vers le mieux.

    Les libristes apprécieront le remerciement explicite de M. Coriat :-)

    Lire les commentaires

  • Sortie de poezio 0.9 (Journaux LinuxFR)

    Sommaire

    Comme je n'avais encore jamais fait de journal à propos de poezio sur linuxfr, je préfère faire une petite introduction pour que les gens ne soient pas perdus.

    Présentation de poezio

    Poezio est un client de messagerie instantanée en console pour le réseau XMPP (Jabber) (pour plus de détails, voir la série de très bons journaux rédigés par goffi qui vont en détail dans le protocole et ce qu’il permet d’accomplir).

    Poezio est conçu pour être rapide à utiliser au quotidien, avec une utilisation de rapprochant des clients IRC bien connus comme weechat et irssi. Dans cet esprit, il est avant tout conçu pour les salons de discussions (MUC) et ne gérait même pas la connexion a un compte (on peut maintenant en avoir un) dans les premières versions, dans l’idée d’avoir le même genre de client qui ne nécessite pas de configuration préalable.

    Il offre néanmoins un certain nombre de fonctionalités avancées liées à XMPP, comme la correction de messages, les accusés de réception, les message carbons (duplication de messages vers toutes les devices), le formatage xhtml-im, une interface de debug XML complète, et bien plus encore.
    Un certain nombre de compromis sont malheureusement réalisés du fait de l’interface en ncurses qui limite un peu les options niveau UI.

    Du point de vue de la sécurité, poezio force le chiffrement avec le serveur en utilisant des ciphers corrects (l’utilisateur peut cependant désactiver le chiffrement ou réduire la qualité des ciphers), fait du cert pinning (via un hash du certificat à la première connexion, et un gros warning avec un prompt si ça change ensuite). Il intègre également un plugin GPG (que personne n’utilise) et OTR.

    Côté technologie, poezio dépend généralement de la dernière version de python en date à chaque nouvelle release, ce qui est rarement du goût de debian stable.

    Enfin, poezio est placé sous licence zlib.

    Nouveautés de poezio 0.9

    Python 3.4 et slixmpp

    Une fois de plus, la version de python requise est incrémentée (pour 3.4).

    Cette fois c’est parce que nous avons changé de bibliothèque XMPP pour slixmpp, qui est notre fork de SleekXMPP (bibliothèque utilisée auparavant), en y substituant le multithreading évènementiel par asyncio. Pour comprendre les raisons de ce fork, référez-vous à l’article de louiz’ donné en lien ci-dessus. (pour résumer : un code plus lisible, pas de race conditions, plus de facilité à raisonner sur le code)

    Cela ne veut pas dire pour autant qu’on se désolidarise complètement de SleekXMPP qui reste une excellente bibliothèque, puisque slixmpp partage toujours avec elle la majorité de son code sans modification. Nous pourrons donc appliquer des nouvelles fonctionnalités et corrections sans ou avec peu de modifications, et leur envoyer les nôtres en retour également.

    Plugin OTR amélioré

    Le plugin OTR qui avait été réécrit avec poezio 0.8 manquait encore des fonctionnalités communément attendues dans un plugin de chiffrement, c’est maintenant corrigé.

    La nouvelle fonctionnalité majeure est le Socialist Millionaire’s Protocol (SMP) qui permet à deux personnes de vérifier l’identité de leur correspondant respectif, à travers un secret partagé ou une question (auparavant il était possible de vérifier les identés, mais seulement en communiquant les empreintes de clefs sur un autre canal).

    D’autres améliorations sont présentes comme un peu de traitement de HTML pour améliorer l’expérience utilisateur, et d’autres options de sécurité pour forcer le chiffrement et la négociation de session.

    OTR

    Connexion avec des certificats clients

    Poezio permet désormais de se connecter sans mot de passe à son serveur en utilisant des certificats X.509 et un mécanisme décrit dans la XEP-0178, et également de gérer ces derniers à travers les fonctionnalités décrites dans la XEP-0257.
    Avec ces fonctionnalités vous pouvez, une fois connecté, ajouter, désactiver, lister ou supprimer ces certificats du serveur.
    Un bug dans le module prosody empêche malheureusement l’utilisation de la XEP-0257 pour l’ajout d’un certificat, mais on peut le patcher en attendant.

    Commandes ad-hoc

    Les commandes ad-hoc dans XMPP permettent à un humain d’interagir avec une entité sans qu’il existe de spécification précise quant à la nature de l’interaction (en dehors XEP-0050, justement). Par exemple, prosody permet avec le chargement du bon module de charger/décharger des modules, de déconnecter ou supprimer des utilisateurs, etc, juste avec des commandes ad-hoc.
    Dorénavant, poezio peut donc lister et exécuter ces commandes ad-hoc à travers une interface dédiée.

    Couleurs de nick

    Auparavant, les couleurs de nicks étaient attribuées selon l’ordre d’entrée des participants dans le salon, ce qui était mémorisable en gardant poezio ouvert plusieurs mois, mais restait perturbant quand la même personne avait une couleur différente selon le salon dans laquelle elle était.
    À partir de maintenant, les nicks seront hashés avant d’être projetés sur la liste des couleurs disponibles, ce qui permet d’obtenir une distribution relativement uniforme, aléatoire, et surtout fixe des couleurs. Les gens qui utilisent le même nick partout devraient donc toujours garder la même couleur.
    Si vous préfériez l’ancien comportement (pour des raisons étranges sûrement valides), il existe toujours et peut être réactivé en changeant une option.

    De plus, Perdu a ajouté une commande pour régler définitivement la couleur d’un nick, donc si vous trouvez qu’une couleur attribuée ne convient pas à quelqu’un, vous pouvez le modifier.

    Accusés de réception

    Les messags envoyés par poezio demandent maintenant des accusés de réception, si le correspondant les prend en charge. Évidemment, poezio répond également aux demandes d’accusés de réception, ce qui devrait permettre aux clients mobiles plus de fiabilité.
    Ce comportement peut être personnalisé, mais il est activé par défaut. Si un accusé de réception est reçu pour un message envoyé, un caractère de validation en vert s’affichera à côté du message.

    poezio receipts

    Gestion de marque-pages

    La commande /bookmarks permettait auparavant de lister tous les marque-pages connus, de façon un peu brute. Désormais cette commande ouvre un onglet vous permettant d’éditer les marque-pages, mots de passe, et de choisir l’emplacement de stockage ainsi que l’autojoin à l’ouverture du client.

    poezio bookmarks

    Performance

    Certains bouts de poezio étaient affreusement mal optimisés. Certains le sont certaiement encore, mais quelques scénarios assez communs devraient être plus rapides de façon exponentielle (par exemple rejoindre un salon avec plusieurs milliers de participants). La lenteur est habituellement invisible dans les cas normaux (comme quelqu’un utilisant poezio sur un ordinateur contruit après 2002 en ayant quelques tabs ouverts), mais ça devient plus problématique quand poezio tourne sur une board ARMv7 à faible consommation avec plusieurs centaines de salons ouverts et un flux constant de nouveaux messages ou présences.

    Plugin IRC

    louiz’ a écrit entre temps un composant IRC appelé biboumi (qui est pour moi la meilleure passerelle IRC disponible). Malheureusement, mélanger des onglets IRC et des MUC normaux est un peu perturbant, j’ai donc écrit un plugin IRC simpliste qui, une fois configuré correctement, gère l’authentification avec nickserv et la connexion aux salons ensuite, ainsi que des commandes préfixées par irc_ pour plus de fluidité dans un fonctionnement normal. Le fonctionnement interne est un hack, mais ça reste bien plus agréable que de tout faire soi-même à chaque fois.

    Reconnexion aux salons

    Le problème quand une connexion timeout ou qu’un serveur redémarre est que vous pouvez ne jamais être prévenu que vous n’êtes en fait plus dans le salon avant que vous n’essayiez d’envoyer un message ou une présence et que ce dernier vous réponde par une erreur. Cette nouvelle version introduit in mécanisme appelé le self-ping qui, une fois activé (et éventuellement configuré plus finement), fera en sorte que poezio s’envoie un ping à travers chaque salon au bout d’un certain temps d’inactivité. Si le salon lui reçoit par une erreur, il va quitter le salon (afin d’être certain de ne plus y être) puis y revenir.
    Cela devrait permettre de ne plus découvrir le matin que l’on a été déconnecté de tous les salons juste après avoir été se coucher parce qu’un serveur a rebooté quelque part.

    Et bien plus encore

    Bien évidemment, il y a plus de commits que ça (plus de 500), que ce soit pour des nouvelles fonctionnalités ou des corrections de bugs. Par exemple, des améliorations de la commande /set, une refonte de l’onglet de debug XML, une commande de destruction de salon, le passage au SHA-2 pour la vérification du certificat, etc…
    Vous pouvez regarder le CHANGELOG ou l’historique git pour plus de nouveautés.

    Packaging

    Comme dit précédemment, poezio dépend maintenant de la bibliothèque slixmpp, cette dernière dépendant d’aiodns, ainsi qu’optionellement de cython afin d’optimiser un module (et dans ce cas libidn sera requis également, ainsi que ses headers pendant la compilation).

    Contributeurs

    En dehors de moi (mathieui), louiz’, et Link Mauve, je veux remercier les autres contributeurs Perdu, Ge0rG, eijebong, Florian Duraffour et Akim Sadaoui pour leur apport en fonctionnalités et corrections.

    Bugs

    Comme toujours, si vous essayez la release et que vous remarquez un bug également non corrigé dans la version git, merci de le rapporter.

    Liens

    Lire les commentaires

  • Lettre ouverte de Mozilla au CEO de Microsoft (Dépêches LinuxFR)

    Chris Beard, le CEO de Mozilla, a écrit une lettre ouverte à Satya Nadella, le CEO de Microsoft, à propos d'une « fonctionnalité » assez peu élégante du tout nouveau Windows 10.

    D'une part, la mise à jour ne conserve pas le choix du navigateur web par défaut. En effet, cette configuration est mise sur Edge, le nouveau navigateur de Microsoft, qui remplace Internet Explorer, et au logo en forme de « e » si proche de l'ancien.

    D'autre part, le mécanisme habituel de changement de navigateur par défaut a été modifié et rajoute une étape, qui passe obligatoirement par une configuration manuelle de Windows, peu limpide.

    La procédure manuelle

    1/ Lancez Firefox, et cliquez sur le bouton « Firefox par défaut »

    Choix du défaut dans Firefox

    2/ Dans la configuration de Windows 10, cliquez sur « Navigateur »

    Choix du défaut dans Windows 10

    3/ Choisissez votre navigateur

    Choisissez votre navigateur

    Lire les commentaires

  • Meetup Python AFPY Paris à NUMA le 30/09/2015 --- Appel à contributions (Journaux LinuxFR)

    Titre de l'image

    L'AFPY (Association Francophone Python) relance ses meetups à Paris, la prochaine édition aura lieu dans les locaux de l'accélérateur de startups du numérique Numa, qui a pris le relais de La Cantine.

    Toute proposition de talk est bienvenue :
    4 créneaux de 30 min disponibles
    Merci de nous soumettre vos propositions avant le 31 août 2015 !

    Voici le PAD modifiable de description de l'évènement :
    PAD

    Horaires : Mercredi 30 septembre, 19h-22h
    Lieu : Numa, 39 Rue du Caire, 75002 Paris (capacité de la salle : 90 personnes)

    Nous sommes à la recherche d'un sponsor pour environ 400€ de collation + boissons (10€/participant)

    Lire les commentaires

  • 31 juillet : la journée des SysAdmin ! (Dépêches LinuxFR)

    Joyeux SysAdmin day à tous !

    Rappel : un « SysAdmin » est un administrateur système.

    Chers SysAdmins, soyez apprécié(e)(s) de vos collègues, par exemple en citant la phrase bien connue à propos de votre métier, « personne ne sait ce que vous faites, mais tout le monde sait quand vous ne le faites pas ». Ou bien il y a aussi : « il y a deux types d'administrateurs système : ceux qui ont fait une boulette… et ceux qui vont en faire une ! ».

    Vous pouvez leur rappeler qu'en ce jour, les cadeaux de leur part sont les bienvenus !

    À tous les autres, faites un geste pour vos SysAdmins ;-)

    Lire les commentaires

  • Toulouse, le Capitole du Libre 2015, l'appel à participation est lancé ! (Dépêches LinuxFR)

    L’édition 2015 du Capitole du Libre se tiendra cette année les samedi 21 et dimanche 22 novembre à l’ENSEEIHT de Toulouse. Le Capitole du Libre est un événement consacré aux Logiciels Libres et à la culture libre. Organisé par l’association Toulibre avec l'aide des clubs étudiants de l'ENSEEIHT (Net7, TVn7, CAn7), il est orienté à la fois vers le grand public et le public spécialisé.

    Des conférences et des ateliers ont lieu tout au long du week-end ; des stands et des animations seront proposés au public pour leur faire découvrir le monde du Libre.

    L'appel à propositions est ouvert jusqu'au 15 septembre à minuit, vous pouvez proposer une conférence ou un atelier (ou les deux) sur ce lien. Il est également possible de demander un espace pour un stand associatif/communautaire.

    À noter

    Cette année nous aurons le plaisir d'accueillir Adrienne Charmet et Jérémie Zimmermann de la Quadrature du Net, Benjamin Bayart de FFDN, Stéphane Bortzmeyer de l'AFNIC, Tristan Nitot de CozyCloud (bien sûr sous réserve de contretemps de tout ordre).

    Il y aura également au programme beaucoup de 3D et de création graphique ; de l'embarqué et des machins connectés à Internet, de l'Arduino et du RaspberryPi, mais pas que ; du DevOps avec notamment Docker ; des technologies du Web, enfin peut-être pas toutes ; et d'autres sujets techniques.

    Côté grand public, nous irons de la culture libre à la libération de nos Internets, en passant par les aspects juridiques et sociétaux du libre en général.

    Au programme du week-end du Capitole du Libre

    Cette année nous avons plus de salles à disposition, un grand amphithéâtre, donc les thématiques proposées sont nombreuses :

    • Grand public : pour découvrir l'écosystème du logiciel libre ;
    • Enjeux du libre : qu'est-ce que le libre transforme dans notre société ?
    • Cryptoparty et vie privée : autohébergement, sécurité et vie privée sur l’Internet ;
    • Culture libre et multimedia : les arts et la culture libres, la MAO, la vidéo ;
    • Poste de travail : environnement de travail, bureautique, utilitaires ;
    • Technique : développement, bases de données, pour la beauté du code ;
    • DevOps : inaugurée en 2014, sera renouvelée et abordera Docker, le cloud libre ;
    • Internet Of Things & embarqué : (re)découverte des Arduino, Raspberry Pi, objets connectés, mais aussi l'embarqué ;
    • Technologies Web : NodeJS, ReactJS, AngularJS, le Web change tous les jours ;
    • Création graphique avec du libre : Blender, FreeCAD, Krita, Gimp, Inkscape, Synfig, la réalisation d’œuvres artistiques avec des outils libres.

    Comme chaque année, le rendez-vous de la communauté francophone de KDE et de Qt sera présent grâce à Akademy-FR.

    Quelques révélations

    Le Blender User Group de Toulouse est en train de vous concocter un programme sur les outils libres de la création graphique et l'animation avec notamment François Grassard (que nous sommes tous les ans ravis d'accueillir).
    Le célèbre modeleur CAO, FreeCAD sera également à l'honneur avec des conférences, des ateliers et la venue du développeur principal Yorik Van Havre.
    La communauté OpenPandora, présente à l'édition 2013, proposera de découvrir le successeur de la Pandora, la Pyra si les aléas naturels ne s'en mêlent pas.

    D'autres surprises sont également dans les cartons …

    Lire les commentaires

  • Jeu La Piste d'Andor / Andor's trail 0.7.1 (Dépêches LinuxFR)

    Andor's trail (« La Piste d'Andor » dans la traduction française) est un jeu libre (GPL) pour système Android. Il est de type rogue-like, de l'exploration d'un monde bi-dimensionnel médiéval fantastique (villes, campagnes, forêts, sous-terrains, etc.) avec de la résolution de multiples quêtes (dont la quête principale de la recherche d'Andor), de la progression de niveau, des portes, des monstres et des trésors. La version 0.7.1 est sortie en février 2014 et le développement du jeu se poursuit. Sauf erreur, il n'avait jamais été évoqué sur LinuxFr.org, et cette dépêche est donc l'occasion d'en parler un peu.

    Logo Andor

    Sommaire

    Andor ?

    Le Andor dont il est question n'a rien à voir le jeu de plateau Andor de M. Menzel (As d'Or 2013 et Spiel des Jahres/jeu de l'année 2013, très sympa par ailleurs), ni avec le royaume d'Andor de la Roue du Temps de R. Jordan, ni avec le Seigneur des Anneaux ou Star Trek. Probablement plus avec le prénom hongrois qui aurait inspiré un des auteurs du jeu ? Bref dans l'histoire du jeu, Andor est votre frère, qui n'est pas rentré à la maison hier et du coup votre père Mikhail vous envoie charitablement à sa recherche dans un monde plein de monstres et de dangers.

    Capture carte

    Une histoire et des quêtes

    Le principe du jeu est de nous baigner dans un monde riche et cohérent. Initialement à la recherche de votre frangin, vous allez découvrir de nombreux lieux, discuter avec de nouvelles personnes et être confronté à divers dangers. Et surtout être impliqué dans de multiples quêtes allant de « Va m'acheter du pain mon fils » à la recherche de qui empoisonne le pays ou de qui espionne qui entre deux royaumes en guerre. Rapidement vous interviendrez dans plusieurs quêtes en même temps, et vous verrez souvent apparaître plusieurs camps en opposition : les choix que vous faites dans les quêtes pourront avoir des répercussions par la suite. Le jeu comporte actuellement une cinquantaine de quêtes (dont deux encore ouvertes).

    Gameplay

    Le principe du jeu est donc résoudre les quêtes, ce qui nécessite de parcourir le monde, donc de pouvoir s'y déplacer sans se faire tuer, impliquant la nécessité de s'équiper, conduisant à l'obligation de trouver de l'or, nous amenant au besoin de résoudre des quêtes pour les récompenses ou de dépouiller des cadavres. Bref au début on affronte des abeilles en tremblant dans son pagne, et un jour on fracasse des lézaroïdes par paquets de douze ou on découpe des liches comme si c'était des parts de quiche engoncé dans son armure de plaques avec ses 42 objets magiques +2.

    Andor ?

    Le repos du guerrier

    Dans divers lieux (chez papa ou souvent dans les auberges des villes), il est possible (gratuitement ou en payant un coût initial) de se reposer dans un lit. Et en cas d'incident fâcheux impliquant un arrêt de vos fonctions vitales suite à un débat tranchant avec un inconnu, vous vous réveillerez dans le dernier lit que vous avez fréquenté (ce qui est à la fois pratique car c'est mieux que d'être définitivement mortellement tué mais peut avoir l'inconvénient de vous renvoyer à des km de l'endroit où vous vous trouviez).

    Il est bien évidemment aussi possible de faire des sauvegardes dans le jeu.

    Chez papa

    Le matériel

    Sinon on s'équipe d'épées/haches/dagues/bâtons/sceptres/etc., d'un bouclier, d'une chemise/armure de cuir/armure lourde/côte de mailles/etc., d'un bonnet/casque/heaume/etc., de moufles/gants et de bottes, et on est parti à l'aventure. Bon évidemment ça serait mieux d'avoir des bénédictions (courage, vitesse, force, etc.) et de ne pas être maudit/blessé (empoisonnement, hémorragie interne, fracture, fatigue, etc.), et de ne pas partir avec un sac vide : avoir de la nourriture et des potions de soin pour regagner de la vie, des antipoisons et divers autres anti-malédictions. Bref comme dans les jeux du même type, une douzaine de porteurs cachés doivent transporter vos 8 tonnes d'équipement mais on ne les voit jamais. Et en allant chez un marchand vous aurez toujours l'impression que vous représentez 82% des échanges commerciaux mondiaux à vous tout seul en revendant les 832 armes et autres objets de votre inventaire à ce brave marchand qui n'a que 3 articles différents en stock.

    Magasin

    Le personnage

    N'oublions pas vos caractéristiques propres : le niveau du personnage, les points d'expérience qui permettent de changer de niveau, les points de vie, les points d'action (à quel point vous êtes rapide ou multitâche), vos probabilités de toucher ou de bloquer, votre force et donc les dégâts que vous infligez, et aussi les compétences que vous avez acquises (taper plus précisément ou plus fort, esquiver, marchander, régénérer, combat avec telle ou telle arme, détecter la magie, etc.).

    Capture équipement

    Traductions

    Le jeu dispose de traductions (partielles ou totales) en allemand, anglais, espagnol, français, indonésien, italien, japonais, malais, polonais, portugais, portugais brésilien, russe et slovène.

    Dans la version que j'ai testée (0.7.1), l'interface est quasi-totalement traduite en français, mais les quêtes sont encore décrites en anglais. Il est de fait difficile de jouer réellement sans lire l'anglais un minimum.

    Code et ressources graphiques

    Le projet est écrit en Java et le code est placé sous licence GPLv2.
    Pour les ressources graphiques, la situation est plus variée : domaine public, GPL, diverses Creative Commons, etc.

    Initialement j'ai testé ce jeu en profitant de vacances hors ligne il y a quelques mois, avec les critères suivant : il est libre, disponible dans F-Droid et installable sans compte Google, ne nécessite pas d'accès réseau, ne nécessite pas une version dernier cri d'Android, ne demande pas de permissions exorbitantes (juste le droit de charger/sauvegarder), avait de bonnes critiques et est assez riche. Bon, évidemment, je ne vous cache pas que ce type de jeu consomme pas mal de temps pour progresser (avec parfois un côté répétitif) et tout visiter. Il est par contre facile de s'arrêter/reprendre à n'importe quel moment.

    Lire les commentaires

  • Marine versus Windaube 10 ! (Journaux LinuxFR)

    Bien le bonjour cher Nal, aujourd'hui je t'envoie un tout petit journal ou plutôt un bookmark à propos d'une réaction de Marine Le Pen afin de vous faire partager cela et que vous puissiez débattre en ce noble et libre espace qu'est et restera linuxfr.org.

    Marine Le Pen viens de donner son avis sur Windows 10 et à mon grand étonnement elle le critique ouvertement, allant jusqu'à le qualifier d'aspirateur à données, enfin du moins c'est l'idée.
    En effet Windows 10 sera livré avec un keylogger intégré et encore plus de backdoors que dans les Windows précédents, à tel point que ça en devient malsain et Marine Le Pen en partageant son avis viens d' instruire pas mal de français sur la vérité qu'est Windows et je trouve ça merveilleux et qui sait peu être que ça incitera plus de personnes à venir sur Linux ou BSD (ou encore hurd !).
    De plus elle a envoyé une lettre ouverte à la Cnil,lui demandant de faire une étude sur les risques et les abus de cette nouvelle mouture.

    Par conséquent si Marine Le Pen est élu présidente en 2017, malgré toutes ses mauvaises idées, cela me rassure dans l'idée qu'elle pourrais faire la guerre à Windows, et qui sait ? Prôner gnu/Linux, financer son développement et celui du libre et enfin aller soyons fou, d'instaurer Linux en tant que standard à l'éducation nationale.

    Le lien : http://www.zdnet.fr/actualites/windows-10-marine-le-pen-denonce-un-espionnage-generalise-39823090.htm

    A noter que Marine s'appuie sur un article du site numerama.com : http://www.numerama.com/magazine/33816-windows-10-faites-tres-attention-a-l-installation.html
    Ce qui veut dire qu'elle lit numerama !
    Bref sur ce je vous aime, merci d'être là vous êtes une communauté géniale <3.

    Lire les commentaires

  • Proposez des présentations pour PyConFR 2015: la date butoir est reportée ! (Dépêches LinuxFR)

    PyConFR 2015, la conférence annuelle francophone consacrée au langage de programmation Python, se déroulera cette année à Pau dans des locaux d'exception à l'EISTI du 17 au 20 octobre 2015.

    La manifestation est comme toujours gratuite et se veut la plus accueillante possible pour tout le monde.

    Si ça n'est pas assez cher pour vous, vous pouvez sponsoriser.

    Si vous avez besoin d'un coup de pouce, l'AFPy propose des bourses.

    Jusqu'ici rien de plus que ce que la précédente dépêche annonçait en juin dernier, cependant je viens de recevoir un courriel important concernant la conférence (report de la date butoir pour les soumissions de conférences), et j'ai cru utile de lui donner la plus grande audience possible en le recopiant en seconde partie.

    Hello !

    Chaque année nous refusons des confs, par manque de place, (très peu par manque d'intérêt, ou pour cause de hors sujet).

    Nous avons déjà une cinquantaine de propositions de talks de très bonne facture et l'on pourrait s'arrêter là, cependant cette année nous avons la chance d'être accueillis dans un lieu qui dispose de 3 salles !, nous pouvons augmenter le nombre de slots.

    Donc toi qui était en vacances (donc débordé) et qui a loupé la deadline !

    Donc, toi là qui a hésité, oui toi là, qui t'es dit j'essaierai bien de proposer un slot, mais j'hésite genre :

    "je ne suis pas une star"

    "je ne suis pas core-dev" Python

    "Je ne suis pas un conférencier confirmé, en fait je n'ai jamais fait de conf, mais j'aimerais bien me jeter à l'eau"

    La PyCon c'est aussi donner l'occasion à tout un chacun de venir partager ses connaissances, son amour du Python, ses tips and tricks, faire connaître ton framework préféré etc
    Ce n'est pas pour rien que l'entrée est gratuite, que c'est ouvert à tous, c'est une volonté délibérée, l'AFPy, la communauté Python Francophone n'est pas élitiste (ça ne veut pas dire qu'il n' y a pas de stars !)

    la PyCon-fr non plus, elle doit être un lieu où l'on partage où l'on apprend quelque soit son niveau !

    Alors oui cette année encore il y a des confs de très haut niveau, des confs proposées par des Maîtres de Conférences, des Professeurs des Universités, des confs sur les arcanes de l'optimisation, etc

    Bien entendu que comme chaque année il y a des confs super originales genre "modéliser la façon d'accorder une guitare électrique, et venir présenter l'implémentation qui en découle !"

    En lisant ce mail tu veux savoir un petit peu ce qui a déjà été proposé, car tu commences à regretter de ne pas avoir soumis de talk

    Cette année les sciences sont à l'honneur :
    Physiciens, chimistes et autre biologistes ont proposé des talks, il y a une très grande diversité de sujets, c'est impressionnant! !

    Tu te demandes si quelqu'un parlera de ton outil préféré du moment, tu te dis que vous êtes tellement nombreux à maîtriser l'outil qu'il y a déjà 5 ou 6 slots sur : Django, devops etc

    alors sache que par exemple parmi les gros projets :

    Il n' y a qu'une conf orientée débutant sur Django par exemple, a croire qu'il n'y a rien eu de nouveau, dans les dernières versions, à croire qu'il n' y a plus d'optimisations, de trucs à ne pas faire avec

    que tout le monde est directement super-efficace avec, et qu'il n' y a plus besoin de tutos, de démos, de bonnes pratiques etc

    Ansible 2 est sur le point de sortir et pas un guss pour venir nous en parler

    idem pour le vénérable Plone qui passe à la version 5 (oui je sais qu'il y a Plone Conf ) à Bucarest en même temps, mais quand même !

    Flask, pas un mot sur Flask !

    Parmi les trucs très peu représentés (une seule conf) il y a également les tips and tricks de l'utilisation du langage lui-même.

    A croire que tout le monde maîtrise les yield from, que tout le monde sait déjà que faire des annotations et du futur "typing" disponible à priori dans Python3.5,
    que tout le monde sait optimiser l'empreinte mémoire, que tout le monde a parcouru de long en large la stdlib.

    Tiens un autre exemple tu te sers du IPython Notebook, tu ne sais plus travailler sans, tu as optimisé ton IPython aux petits oignons et tu crois que tout le monde fait pareil

    Tu es un dieux du web-scrapping et tu crois que tout le monde a tes heures d'utilisations ou sait ce qu'il est possible faire très efficacement avec deux trois bibli genre scrapy, requests etc

    d'après toi dans l'assistance combien de personnes ne maitrisent pas l'outil comme toi, ne savent pas que ça existe, ou aimeraient écouter un talk qui montre l'intérêt de l'outil, voire mieux qui pourrait être suivi d'un atelier sur le sujet

    Oui les sujets au dessus ont pour certains déjà été présentés dans le passé, mais tout le monde n'y a pas assisté, que fais tu des absents, des gens qui ont découvert le Python depuis etc

    Combien de gens viennent chaque année pour écouter la présentation sur tel ou tel framework, ou autre

    Ce qui est sur c'est que le slot, le poster, l'atelier que tu n'es pas venu présenter, et bien personne n'y assistera !
    et ça vois-tu il n'y a que toi qui puisse corriger la chose

    La deadline est donc prolongée au 09 août 2015

    pour l'orga

    Jean-Philippe Camguilhem

    Lire les commentaires

  • Sortie d'ejabberd 15.07 (Dépêches LinuxFR)

    ejabberd 15.07 vient de sortir et elle apporte un lot de nouveautés significatives.

    Avant d'entrer dans le vif du sujet, pour ceux qui ne connaissent pas encore ce projet, il s'agit d'un serveur de messagerie conforme au protocole XMPP. Ce protocole est très vaste (NdM: voir la série d'articles présentant le protocole) et permet d'implémenter de nombreux types de systèmes de messagerie en temps réel, allant de la messagerie instantanée à l'Internet des objets, en passant par le jeu vidéo. C'est dire l'importance de ce protocole, à une époque où la plupart des systèmes de messagerie restent des silos fermés et sans capacité d'interopérer. XMPP supporte nativement la fédération, ce qui signifie que des utilisateurs de différents domaines peuvent communiquer entre eux.

    ejabberd est l'un des serveurs XMPP les plus anciens et les plus reconnus. Il est inclus dans de nombreuses distributions Linux et se distingue par le fait qu'il est développé en Erlang. Cette caractéristique lui donne robustesse et fiabilité, mais aussi forte capacité à monter en charge.

    Parmi les changements de fonctionnalités, l'accent est mis sur le support du PubSub et de l'archivage des messages. Ce sont aujourd'hui deux éléments fondamentaux du protocole XMPP qui sont en pleine évolution et façonnent le protocole XMPP de demain. Disposer d'un serveur avec des fonctionnalités très à jour sur ces aspects est crucial pour l'avenir du protocole.

    Un gros effort a également été fait sur le packaging et la simplicité d'installation, en offrant notamment la possibilité de compiler et d'installer des modules issus de contributeurs externes sans avoir à devenir un expert d'Erlang.

    Cette version est l'aboutissement de gros changements survenus durant les six derniers mois sur le projet et cette dépêche est aussi le moment de faire un bilan.

    Depuis le début l'année, l'équipe gérant le projet ejabberd a décidé d'accélérer le rythme des mises à jour. Partant du constat que le protocole XMPP a besoin d'une forte accélération de sa couverture fonctionelle pour faire face à la concurrence des services propriétaires, l'équipe a décidé de reprendre le rythme des débuts, à une époque où ejabberd était la plate-forme expérimentale qui a aidé à façonner les premières versions du protocole XMPP. Cela explique aujourd'hui le rythme effréné d'améliorations du projet.

    En six mois, le projet a donc connu cinq versions majeures, presque une version par mois, chacune apportant bon nombre de fonctionnalités importantes. Parmi ces améliorations majeures sur ces derniers mois, l'équipe a ajouté:

    • la gestion du langage de programmation Elixir pour le développement de plugin. Plus moderne et plus abordable qu'Erlang, il aide à démocratiser le développement d'extensions pour ejabberd.
    • de nombreuses fonctionnalités pour les administrateurs. La commande de contrôle du serveur ejabberd, ejabberdctl, s'est vu dotée de dizaines de nouvelles commandes. Il est ainsi possible de gérer l'essentiel du serveur, des salons de discussion, du clustering, juste avec cette commande.
    • un gestionnaire de paquets pour la compilation et l'installation de contributions.
    • la gestion des websockets en plus du protocole HTTP standard pour améliorer la réactivité des clients Web.
    • la gestion de l'archivage coté serveur, avec le protocole MAM (Message Archive Management) et évolution rapide pour coller aux derniers changements.
    • un moteur de contrôle de la syntaxe du fichier de configuration au lancement pour aider l'administrateur d'un serveur ejabberd.
    • l'amélioration de l'interaction avec les clients mobiles avec le support de la gestion des flux.
    • une amélioration des performances.

    À noter qu'ejabberd est aussi le seul serveur XMPP à inclure une interface SIP minimaliste pour permettre de passer des appels Voix sur IP avec des clients existants tel que celui fourni par défaut avec Android.

    Le rythme de développement doit continuer dans les mois qui viennent avec le support de plusieurs nouvelles extensions XMPP prévues dès les mois de septembre / octobre. Tout dépend de votre retour, alors pour ceux qui pensent que l'avenir de la messagerie en temps réel dépend d'XMPP, c'est le bon moment pour apporter votre soutien au projet et faire vos retours.

    Lire les commentaires

  • François Hollande visite 42, non mais allô quoi... (Journaux LinuxFR)

    Vous êtes peut-être passé à côté de cette information capitale : François Hollande a visité l'école 42. Mais qu'allait-il faire là ? Honnêtement, je me le demande encore. Il avait peut-être un besoin urgent et il a vu de la lumière, il est rentré ? Je ne vois que ça comme explication.

    Plus sérieusement, ce coup de projecteur sur cette école pose de nombreuses questions. En tant qu'enseignant-chercheur dans une université publique, je m'interroge. Tout d'abord sur l'école en elle-même.

    1) 42 est une école qui ne délivre aucun diplôme, c'est juste une formation privée qui n'est reconnu que par ceux qui veulent bien la reconnaître. En l'occurrence les entreprises de son fondateur et mécène sont sûrement très intéressées par avoir des gens formés sur mesure et qu'on peut payer comme on veut vu qu'ils n'ont pas de diplôme reconnu par une convention collective.

    2) 42 ne donne pas une bonne image du métier d'informaticien. Honnêtement, quel est l'intérêt pédagogique de faire travailler des étudiants jusqu'à épuisement ? Dans quelle entreprise fonctionne-t-on de cette manière ? On oppose souvent le fait que ces étudiants sont passionnés. Non, il ne faut pas confondre passion et addiction. Un passionné ne met pas sa santé en danger pour pratiquer sa passion (s'il veut la pratiquer longtemps). En revanche, on voit très bien le cadre idéologique dans lequel cela s'inscrit : la concurrence libre et non-faussée entre des étudiants corvéables à merci.

    3) 42 donne soi-disant sa chance à tout le monde. OK, mais après sélection quelle est la proportion d'étudiants ayant suivi un parcours scientifique ? Ha oui, on va réussir à trouver un gars ou une fille qui avait fait arts plastiques avant, mais ça ne fait pas des statistiques tout ça. L'université aussi donne sa chance à tout le monde mais elle ne laisse pas sur le carreau ceux qui ne réussissent pas.

    Donc déjà là, je me demande bien ce qu'un président de la république, soi-disant de gauche, vient faire dans une école privée de ce genre. Mais surtout, je m'interroge sur le devenir de l'université en arrière plan.

    1) L'université publique est dépecée pièce par pièce depuis de nombreuses années (avec une accélération depuis la LRU). Pour le dire simplement : l'Etat ne donne pas les moyens à l'université d'assurer sa mission de service public. Dans mon UFR (et c'est parfois pire ailleurs), la dotation générale de fonctionnement, c'est-à-dire l'argent qui arrive directement du ministère, ne couvre même plus les factures d'eau/électricité/chauffage. Voilà où on en est.

    2) Ces années et pour plusieurs années encore, l'université publique doit faire face à une augmentation du nombre d'étudiants (le mini baby boom autour de 2000) mais pour autant, les budgets sont en baisse. Pas identiques, mais réellement en baisse. Les universités essaient de trouver toutes les astuces pour réussir à accueillir tous les étudiants. Parfois certaines jouent au jeu malsain de baisser les capacités d'accueil (en gros, mettre un quota sur le nombre d'étudiants qu'on peut accueillir) quitte à surcharger l'université voisine qui a son tour baissera sa capacité d'accueil, etc. On va dans une spirale infernale où bientôt, on ne pourra plus accueillir tous les bacheliers qui veulent s'inscrire à l'université.

    3) La régionalisation arrive avec son cortège de conneries. Bientôt, les universités seront transférées aux régions (bizarrement, les nouvelles universités fusionnées correspondent assez bien aux nouvelles régions recharcutées). Et en plus, elles se spécialiseront parce que ça coûte trop cher de garder toutes les disciplines partout. Et puis pour un baron local devant la presse, il vaut mieux dire qu'on est bon dans un domaine, l'arroser copieusement et laisser le reste crever (ça se voit pas de toute façon dans les médias). Sauf que la recherche, ce n'est pas en mettant plein de brouzoufs au même endroit que ça marche.

    Bref, Hollande qui visite 42, c'est prôner une vision de l'enseignement supérieur totalement contraire à ce qu'est le service public. Et quand dans le même temps on délaisse l'université, on se demande bien ce qui va encore nous tomber sur la tête. Ou plutôt on le sait mais personne n'ose y croire. Mais sérieusement, qu'allait-il faire là ?

    Lire les commentaires

  • Sortie de QGIS 2.10 « Pisa » (Dépêches LinuxFR)

    Le projet QGIS a l’immense plaisir de vous annoncer la publication de la version 2.10 de sa suite logicielle de Système d'Information Géographique (SIG) libre.

    QGIS est un SIG convivial distribué sous licence publique générale GNU. C'est un projet officiel de la fondation Open Source Geospatial (OSGeo). Il est disponible sur les systèmes d'exploitation GNU/Linux, Mac OS X, Windows et Android et intègre de nombreux formats vecteur, raster, base de données et fonctionnalités.

    QGIS est développé en C++ avec la bibliothèque Qt (en version 4 pour le moment). Son architecture lui permet également d'utiliser des extensions codées en Python (version 2) et la très grande majorité des classes du cadriciel de QGIS sont disponibles sous Python.

    QGIS est une des applications majeures qui utilisent Qt. Actuellement, l'arborescence des sources (tout confondu) occupe près de 350 Mo. Les contributeurs recensés sur GitHub sont au nombre de 159.

    Même s'il reste un logiciel libre, QGIS assure en grande partie le financement de son développement via des sponsors divers qui vont d'entreprises ayant besoin de SIG comme des compagnies aériennes à des organisations gouvernementales (y compris le gouvernement français) en passant par des universités et également des particuliers.

    Par ailleurs QGIS s'interface avec de nombreux autres logiciels, que ce soit des bases de données spatiales comme PostgreSQL/PostGIS ou Oracle Spatial, mais également avec un grand nombre de logiciels de SIG libres comme GRASS, SAGA ou encore Orfeo.

    Dans la suite de la dépêche, un aperçu des nouveautés vous sera présenté plus en détails ainsi qu'une esquisse des développements à venir. Pour le public non averti, la suite de la dépêche offre également un petit focus sur les SIG et sur QGIS…

    Note : le nom du projet est bien QGIS en majuscules et non Quantum GIS ou QGis.

    Sommaire

    Petit rappel pour ceux qui ne connaissent ni QGIS ni les SIG

    QGIS, c'est quoi ?

    QGIS est une suite logicielle de traitement de l'information géographique. Elle permet de générer des cartes, d'analyser des données spatiales et de les publier, en ligne ou sur papier. Elle permet également de réaliser de nombreux traitements et algorithmes sur des données spatiales ou d'autres données liées.

    Que signifie SIG ?

    Le sigle SIG ­— en anglais GIS — signifie Système d'Information Géographique.

    Le traitement de l'information géographique est une niche spécifique des technologies de l'information, au même titre que l'informatique décisionnelle ou l'informatique du calcul scientifique. L'information géographique a pour particularité essentielle de traiter des données spatiales (avec des coordonnées sur un plan ou dans l'espace), souvent combinées avec des données alphanumériques plus classiques.

    Un SIG est constitué :

    • de données géographiques et alphanumériques, stockées dans des bases de données spatiales (PostGIS ou Spatialite en logiciels libres, Oracle Spatial/MSSQL en logiciels propriétaires) ou dans des fichiers. Ces données sont souvent gérées sous forme de couches empilables les unes sur les autres pour former des cartes (selon l'ordre d'empilage).
    • d'outils pour afficher, publier et traiter ces données.

    Les données traitées dans un SIG peuvent être réparties en trois types distincts :

    • Les données vectorielles : elles sont stockées sous la forme d'ensemble de points et peuvent définir des points, des lignes (ou ensemble de lignes) et des surfaces (polygones).
    • Les données raster : il s'agit de données stockées sous forme matricielle (tableau/bitmap).
    • Les données alphanumériques : on peut ajouter des attributs à un objet vectoriel ou matriciel. Il s'agit d'informations plus classiques qu'on retrouve souvent dans les SGBDR ou les fichiers de tableur (ODS/CSV par exemple).

    Pour être plus concret, un SIG et les données qui y sont stockées permettent de répondre à des questions du type (du plus simple au plus complexe) :

    • Quelle est la surface de cet ensemble de bâtiments ?
    • Où sont situées les populations de Vipera ursinii ?
    • Quelle est la distance moyenne entre les bâtiments d'une commune et les routes de catégorie nationale ?
    • Qui ne respecte pas les limites de traitement à proximité des cours d'eau ?
    • Au cours des 50 dernières années, comment a évolué la morphologie urbaine d'une commune ?

    Si vous voulez en savoir davantage sur les SIG, je vous invite à lire la rapide introduction aux SIG du projet QGIS qui est très bien faite et agnostique au niveau des outils (et traduite en français qui plus est).

    Quels sont les logiciels de la suite QGIS ?

    Le projet QGIS est composé de plusieurs logiciels différents qu'il convient de présenter pour mieux comprendre les différents éléments de la suite logicielle :

    • Le logiciel bureautique QGIS (QGIS Desktop) : c'est l'outil principal, le plus important et le plus développé. Il constitue l'interface la plus utilisée. Il permet d'afficher des données, de les traiter et de créer des mises en pages (cartes). QGIS Desktop permet de générer des fichiers projet qui font le lien entre les données, la représentation de ces données, les traitements à effectuer.
    • Le navigateur de données (QGIS Browser) : il permet de parcourir le catalogue des données disponibles. En règle générale, les SIG peuvent traiter un grand nombre de données différentes. Par exemple, une collectivité publique (mairie/conseil régional/métropole) peut facilement héberger plus d'un millier de couches différentes qui sont créées en interne ou récupérées depuis différents partenaires. Pour mieux accéder à cette "masse" d'information, il est essentiel de pouvoir la cataloguer pour faciliter les options de recherche et de sélection. Le navigateur de données QGIS permet de parcourir ce catalogue et de mieux connaître son patrimoine de données géographiques.
    • Le serveur de données OGC (QGIS Server) : il s'agit d'un binaire destiné à présenter des services Web cartographiques à partir des fichiers de projet générés avec QGIS Desktop. Les services web cartographiques visent principalement à fournir des données à des clients via HTTP, en utilisant des protocoles normalisés par l'OGC (WMS, WFS, etc.). Ces clients peuvent être des clients lourds (comme QGIS Desktop) ou des navigateurs web via l'utilisation de bibliothèques Javascript dédiées (OpenLayers, Leaflet, etc.).
    • Le client Web (QGIS Web Client) : QGIS Server ne fournit que des services Web, pas l'enrobage. Pour l'affichage d'une carte dans un navigateur web, il faut un client Javascript dédié et c'est l'objet du client web de QGIS. Ce dernier est aujourd'hui traité un peu à part du client Desktop et du serveur (il dispose d'un dépôt dédié et ne fait pas l'objet de publications régulières comme les trois autres parties de QGIS évoquées ci-dessus).

    Qui utilise des SIG ?

    Les logiciels de SIG sont utilisés par un grand nombre d'acteurs :

    • Les services de l'État et les collectivités utilisent fortement les logiciels de SIG. Les ministères français en charge de l'écologie et de l'agriculture utilisent QGIS au sein de leurs services et établissements. Ils financent d'ailleurs certaines fonctionnalités.
    • Les agences d'urbanisme.
    • Les entreprises qui ont besoin de gérer un territoire (agriculteurs/forestiers).
    • Les entreprises de logistique (gérer/optimiser les trajets).
    • Les SIG sont utilisés et enseignés dans la plupart des disciplines scientifiques qui traitent de territoire.
    • Vous-même lorsque vous utilisez OpenStreetMap (SIG communautaire) ou Google Maps (c'est une partie du SIG de Google).

    Nouveautés par rapport à la dernière version

    Je vous invite à parcourir le « visual changelog » qui est plus complet que cette dépêche. Néanmoins, voici quelques-uns des éléments phares des nouveautés apparues dans cette nouvelle version.

    Nouveau moteur géométrique

    Cette version de QGIS amène des changements profonds dans le moteur chargé de gérer les différents types de géométrie des objets. Jusqu'à présent, QGIS ne gérait pas les géométries courbes (CURVE) qui sont souvent utilisées dans les données de DAO (AutoCAD DXF). Le stockage de l'information de ce type de géométrie est spécifique. Par exemple, on représente souvent un cercle ou un arc de cercle en utilisant uniquement la définition du point central et du rayon et on laisse au logiciel le soin de gérer sa représentation.

    Pour afficher des cercles, il fallait construire une polyligne fermée qui prenait la forme d'un polygone régulier avec de nombreux segments (pour "émuler" un cercle). Avec la version 2.10, il est maintenant possible d'afficher des objets courbes de manière plus fine, au moins ceux qui sont stockés dans une base de données PostGIS. Cela permet d'économiser de la place dans la base de données (moins de segments à stocker) mais également d'améliorer le rendu (cercle parfait au lieu de polygone régulier) et la précision.

    Ronds-points dans QGIS avec une géométrie courbe

    Ajout d'un constructeur de requêtes pour DBManager

    QGIS propose une extension Python pour gérer des bases de données. Cette extension (nommée DBManager) est installée par défaut et permet de lister les tables d'une (ou plusieurs) base(s) de données, d'afficher des informations sur la structure de la table, de ses index, de ses déclencheurs, etc. Elle permet également de construire des requêtes et d'en exporter le résultat directement dans le canevas de cartes de QGIS.

    Le requêteur était jusqu'à présent assez orienté vers les spécialistes du SQL (et de ses variantes spatiales). QGIS 2.10 propose maintenant un constructeur de requêtes qui simplifie le travail pour les débutants en offrant un module de création de requête assisté. Ce module est basé sur l'interface présentée par le logiciel propriétaire MapInfo.

    Query builder

    Fonction logarithmes dans la calculatrice raster

    La calculatrice raster est un outil permettant de réaliser des opérations matricielles sur les couches raster (cf définition plus haut). La version 2.10 de QGIS ajoute les fonctions logarithmes à cette calculatrice (Ln et Log10).

    Calculatrice raster

    Amélioration des exports DXF

    DXF est un format utilisé en DAO. Il est souvent utilisé pour stocker des dessins de plans. Cela fait maintenant trois versions de suite que l'export DXF est amélioré. Au menu de cette version, en plus des corrections de bugs, le module d'export DXF permet:

    • de choisir les couches ou les groupes de couches du projet à exporter.
    • d'exporter l'ensemble des données situées dans l'étendue affichée.
    • d'exporter la symbologie de chaque couche exportée.
    • d'exporter les étiquettes et les polices utilisées.
    • conversion automatique des symboles (formes basiques ou SVG) en blocs DXF.

    L'image ci-dessous présente une vue sous QGIS à gauche et l'affichage de l'export DXF dans AutoDesk TrueView sur la droite.

    Vue comparative: QGIS/Autodesk trueview

    Les champs virtuels peuvent maintenant être mis à jour

    Depuis QGIS 2.8, il est maintenant possible d'ajouter des champs virtuels aux couches de données. Ces champs permettent de réaliser des calculs ou des traitements alphanumérique à la volée. Par exemple, vous pourriez vouloir créer un champ affichant le périmètre de chacun des objets (polygones) d'une couche.

    Les champs virtuels peuvent se greffer à n'importe quelle couche (qu'elle vienne de fichier à plat ou d'un SGBDRS) et sont stockés dans le fichier du projet. Leur expression est calculée à la volée et le contenu de ces champs est donc dynamique (évolue en fonction des données contenues dans la couche).

    Mais lorsque vous vouliez changer l'expression de calcul du champ virtuel, vous étiez obligé de détruire le champ pour le recréer avec la nouvelle expression. Ce n'est plus le cas pour la version 2.10 où vous pouvez changer cette expression directement dans les propriétés de la couche.

    Champ virtuel modifiable

    Les filtres d'expression peuvent être joués depuis le serveur PostgreSQL

    QGIS utilise des expressions pour réaliser des calculs, des tris ou des sélections sur les données alphanumériques. Le moteur d'expression de QGIS est riche et s'étoffe de plus en plus. On peut comparer le système des expressions au système des opérateurs et des fonctions dans le tableur Calc de LibreOffice.

    Voici un exemple d'expression:

    length("NAME" || ' ' || "SURNAME") > 50

    Appliquée à l'outil de sélection, elle permet de sélectionner les objets dont la longueur de la concaténation des champs "NAME" et "SURNAME" (avec un espace entre les deux) est supérieur à 50. Appliquée à l'outil de mise à jour des champs (ou dans un champ virtuel), elle permet d'afficher True ou False selon que la longueur du contenu des champs est supérieure à 50 ou non.

    Le moteur d'expression de QGIS a été développé de manière indépendante des différentes sources de données et il comporte donc son propre langage (plutôt un ensemble d'opérateurs et de fonctions proches de ce qu'on trouve dans SQL) ,indépendant des formats de données. L'intérêt est de pouvoir utiliser le moteur d'expression pour tout type de données.

    Mais l'inconvénient majeur est que pour faire une sélection d'objets géographiques en fonction d'une expression, il est nécessaire de rapatrier les valeurs des attributs concernés par l'expression et ce, pour chaque objet. Pour une base de données avec plusieurs millions d'enregistrements, les temps peuvent être assez longs.

    Pour éviter ce problème, les développeurs de QGIS ont commencé à implémenter la transformation des expressions en filtres SQL qui seront directement joués au niveau du serveur de SGBDR, évitant le parcours de toute la table. Pour l'instant seul PostgreSQL/PostGIS est géré mais les bases du code permettront également de l'implémenter pour les autres SGBDR connectables à QGIS (respectivement Oracle/MS-SQL Server et MySQL).

    Expression par le moteur PostgreSQL

    Auto-complétion des données relationnelles dans les formulaires de saisie

    Une des richesses de QGIS est d'offrir un grand nombre de contrôles de formulaire pour la saisie des informations alphanumériques. Par exemple, lorsque vous dessinez une parcelle cadastrale, vous aurez besoin de saisir dans la foulée un tas d'attributs tels que le numéro de parcelle, le nom de la commune sur laquelle elle se trouve, le numéro de section, etc. Pour faciliter ce travail fastidieux, QGIS construit des formulaires de saisie pour guider cette dernière. Par exemple, plutôt que d'écrire manuellement le nom de la commune, QGIS affichera (suivant le paramétrage dans le fichier de projet) une liste déroulante avec les noms des communes. C'est à la fois plus pratique et plus sécurisant pour l'utilisateur qui créé la donnée.

    Pour faciliter la création des contrôles de type liste déroulante, QGIS propose d'aller chercher les données dans une table (autre fichier ou table de DB) pour disposer d'une liste toujours à jour (on parle alors de valeur relationnelle).

    La version 2.10 de QGIS introduit la possibilité de proposer de l'auto-complétion lors de la saisie d'une valeur relationnelle. Au lieu d'avoir une liste déroulante, on a une entrée texte dont la modification entraîne l'apparition d'une liste déroulante dynamique:

    Auto-completion

    Assistant de graduation de la taille des symboles

    Sous QGIS, la taille d'un symbole peut être fixe ou dépendante d'un attribut de l'objet. Par exemple, on peut vouloir représenter le nombre d'habitants d'une ville par un cercle dont le rayon est proportionnel au nombre d'habitants.

    Jusqu'à présent, le paramétrage de cette taille était assez basique et il n'était pas possible de visualiser en avance la taille des symboles sans appliquer le style à l'ensemble de la couche et de visualiser le résultat dans la canevas de cartes.

    Avec la version 2.10, QGIS permet de construire très finement la taille dynamique du symbole en fonction d'une expression et de pré-visualiser l'aspect global des tailles dans une boîte de dialogue dédiée (un assistant). Cela permet de mieux prévoir la taille des symboles et de gérer leur dimension sans devoir faire de nombreux tests fastidieux.

    Dans l'illustration qui suit, on calcule la taille du symbole (un carré en couleur) en fonction d'une formule (somme de plusieurs champs). L'échelle de la taille des symboles est calculée suivant une distribution linéaire des valeurs calculées par la formule. Dans la partie droite, on a un pré-affichage de la taille des symboles sur plusieurs valeurs pour mieux se rendre compte.

    Assistant taille des symboles

    Effets de style pour les couches et les symboles

    QGIS dispose déjà de nombreux paramètres pour l'affichage des géométries ponctuelles (symboles) ou linéaires et polygonales. Mais régulièrement, des nouveautés font leur apparition. Dans la version 2.10, il s'agit de l'ajout des effets de style.

    Ces effets permettent d'améliorer l'affichage global du symbole ou de la couche en permettant:

    • la création d'une ombre portée ou interne en fonction de nombreux paramètres (rayon, rayon de floutage, transparence, couleur de l'ombre, etc).
    • le rendu d'une luminescence interne ou externe.

    Voici un exemple d'ombre portée qui augmente la visibilité des objets bâtiments:
    Ombre portée

    Pour l'avenir

    QGIS évolue assez rapidement. Le rythme de publication des nouvelles versions est assez intense : tous les 4 mois (environ), une nouvelle version est publiée. Pour ceux qui voudraient avoir une vision plus pointue du futur contenu de QGIS, voici quelques points notables pour la future version de QGIS. Sachant que le gel des nouvelles fonctionnalités est prévu pour la fin septembre 2015, il est probable qu'il y ait d'autres ajouts…

    DBManager pour les bases de données Oracle Spatial

    Pour rappel (cf point sur le constructeur de requêtes), DBManager permet de lister les tables d'une (ou plusieurs) base(s) de données, d'afficher des informations sur la structure de la table, de ses index, de ses déclencheurs, etc. Elle permet également de construire des requêtes et d'en exporter le résultat directement dans le canevas de cartes de QGIS.

    Depuis la version 2.2, QGIS permet de se connecter à des bases de données Oracle (avec son extension spatiale nommée Spatial) mais le plugin DBManager ne supportait pas ces dernières. Ce problème est réglé avec l'intégration du support des bases de données Oracle Spatial dans DBManager.

    Formatage conditionnel des cellules de la table attributaire

    La table attributaire de QGIS permet de consulter les valeurs des données alphanumériques des données géographiques (pour les couches qui en ont). Jusqu'à présent, cette table d'attributs était assez basique: son rôle était de présenter les données de manière brute.

    Dans les versions à venir de QGIS, il sera possible d'utiliser le moteur d'expression pour enjoliver les cellules de la table d'attributs. Au delà de la fonction esthétique, cela permet de visualiser plus rapidement les valeurs qui intéressent l'utilisateur.

    Coloration et style de police des cellules de la table attributaire

    Traduction des noms et des groupes de géo-algorithmes (Processing)

    Les géo-traitements (Processing) sont arrivés dans la version 2.0 de QGIS. Il s'agit d'algorithmes spécifiques (ou non) à l'information géographique comme l'algorithme du voyageur de commerce ou encore l'algorithme de création de bassin versant sur des données raster. Ils permettent d'effectuer des traitements (ou une série de traitements chaînés) sur un ensemble de données géographiques.

    Jusqu'à présent, les noms et la définition des traitements ainsi que des groupes de traitement n'était pas traduisibles. Cela peut poser des problèmes de compréhension car les termes employés par les traitements peuvent être vraiment très spécifiques et très proches du métier qu'ils recouvrent. De plus l'interface de QGIS est généralement bien traduite (cf les statistiques sur Transifex) et tout le panneau des géo-traitements paraissait à part depuis de nombreuses versions.

    C'est maintenant réglé: le code a été modifié pour permettre la traduction. Il ne reste plus qu'à traduire le tout…

    Export des symboles aux formats PNG et SVG

    QGIS est très riche en ce qui concerne le style des symboles. Avec ce commit, il sera possible d'exporter les symboles du gestionnaire de style de QGIS sous forme d'image PNG ou SVG.

    L'intérêt est de pouvoir réutiliser facilement ces images dans des légendes personnalisées (y compris dans le gestionnaire de composition de QGIS) ou dans d'autres documents.

    Quelques défis à relever

    Parmi les choses "sous le capot" qui n'apportent pas grand chose à l'utilisateur final, on peut relever au moins deux challenges de taille pour les développeurs QGIS:

    La migration vers Qt5 est en cours depuis au moins deux versions mais actuellement, la version 2.10 de QGIS utilise Qt4 par défaut. Il y a des chances que ce travail aboutisse pour la version 3.0 de QGIS (prévue on ne sait pas encore pour quand mais on s'en rapproche un peu plus chaque jour !).

    Le passage vers Qt5 amènera sans doute plus de stabilité pour la version Android de QGIS.

    La migration vers Python3 implique le passage du code de toutes les extensions QGIS (et elles sont nombreuses !) de Python2 vers Python3. Ces extensions étant développées de manière libre par rapport au cœur de projet, il faudra un effort substantiel de la part de l'ensemble des mainteneurs. Il y aura sans doute de la casse à prévoir…

    Petit retour sur la publication de QGIS 2.10

    QGIS a un rythme de publication par dates. Tous les 4 mois, une nouvelle version est publiée. Dans ces 4 mois, il y a une période de 3 mois qui permet d'inclure de nouvelles fonctionnalités. Ensuite, arrive une période d'un mois de gel des nouvelles fonctionnalités qui permet de se concentrer sur la résolution des bugs, permettant de livrer une version avec des nouveautés et avec un minimum de bugs. Dans la période du dernier mois, la version "release-candidate" est rendue disponible dans les "nightly-builds".

    Les utilisateurs habituels de QGIS auront remarqué qu'en fait, la version 2.10 de QGIS est sortie vers le 28/06 alors que l'annonce officielle a été publiée le 22/07. Néanmoins, depuis quelques versions maintenant (la 2.6), on assiste au phénomène suivant: à la suite de la publication de la version 2.x.0, des bugs majeurs sont remontés; ils n'ont pas été détectés dans la release-candidate. Dans la foulée, ces bugs sont corrigés et environ un mois après la publication initiale, une version 2.x.1 est publiée en remplacement de la version 2.x.0. Pourtant, QGIS a fortement recours aux tests unitaires automatisés (via Travis CI).

    C'est encore une fois le cas avec la version 2.10 et cette dernière a été officiellement annoncée par le release manager une fois que tous les paquets binaires de la version 2.10.1 ont été construits et rendus disponibles sur le site de téléchargement.

    Cette technique permet d'éviter de rameuter les utilisateurs finaux sur une version qui présente encore des bugs. Néanmoins ce fonctionnement est pervers: la version 2.x.0 est censée être la bonne !

    L'origine du problème semble être le fait que les utilisateurs ne font pas assez de tests sur la version "release-candidate". Cette dernière s'installe pourtant assez facilement: il existe un installeur dédié pour MS-Windows et des dépôts spécifiques pour les OS GNU/Linux. Néanmoins, il semble que la majorité des utilisateurs finaux ne fassent de vrais tests qu'une fois la version stable livrée ce qui décale d'autant la découverte de bugs importants.

    Si vous êtes utilisateur de QGIS, je ne peux donc que vous encourager à prendre du temps pour tester la version candidate dès le 26/09/2015. Si vous êtes sous Debian, je vous invite à configurer le dépôt nigthly (http://qgis.org/debian-nightly-release) et à jouer de l'apt-get upgrade aussi souvent que possible. Si vous êtes sous MS-Windows, vous pouvez utiliser l'installeur OSGeo4W et installer le paquet qgis-rel-dev ou qgis-dev. Ces deux paquets n'auront aucune influence sur votre installation stable de QGIS. Vous pouvez également utiliser les versions hebdomadaires des paquets d'installation prêts à l'emploi de QGIS: http://qgis.org/downloads/weekly/?C=M;O=D (la bonne version est la 2.11).

    Bien entendu, n'hésitez pas à utiliser le bugtracker de QGIS pour remonter les problèmes.

    Conclusions

    Au fur et à mesure du temps qui passe, les fonctionnalités de QGIS s'améliorent et s'enrichissent, comme peuvent le montrer les évolutions de cette dernière version stable.

    Le rythme de publication de QGIS est assez soutenu et il est parfois difficile de suivre ce rythme pour certaines structures ou pour des utilisateurs non avertis. Dans ce cas, ils peuvent se tourner vers la version "support à long terme" (LTR) qui est la version 2.8 et qui devrait connaître une nouvelle publication (2.8.3) dans les jours à venir.

    Petit à petit, QGIS se hisse au niveau des meilleurs logiciels propriétaires de SIG et les dépasse déjà sur certaines fonctionnalités, notamment sur la gestion des styles et sur la gestion multi-threads du rendu graphique.

    Voilà, si vous avez envie de vous lancer dans le traitement de données géographiques, n'hésitez pas à utiliser la dernière version de QGIS. Pour éviter d'être déçu par la complexité inhérente au sujet (l'information géographique) et à l'interface du logiciel, je vous recommande de lire le tutoriel/manuel d'apprentissage qui est traduit dans sa très grande majorité en français.

    Note: QGIS est un logiciel SIG généraliste. Si vous voulez travailler pour/avec les données du projet OpenStreetMap, il est sans doute préférable de travailler avec les outils dédiés d'OpenStreetMap comme JOSM ou iD même si QGIS sait lire les fichiers issus d'OSM.

    Lire les commentaires

  • Libellule n°77 - Août 2015 (Livret d’info libre) (Journaux LinuxFR)

    En août, comme à l’accoutumé, c’est plutôt le calme plat, pour ne pas déroger à la règle, ce mois-ci sera plutôt tranquille, profitez-en, car septembre s’annonce plutôt animé.

    L’actualité de ces derniers temps à propos du Libre ou des Communs, se focalisent essentiellement sur l’adoption de la loi dite « Renseignement ». En effet, plusieurs médias, associations ou encore institutions s’offusquent du contenu dévastateur et des conséquences sur nos libertés à tous demain, sur internet. « Le Conseil constitutionnel entérine donc un nouveau recul de nos droits fondamentaux et de nos libertés ».
    Montpel’libre appelle le retour au calme après ces prises de positions passionnées et au bon sens en vertu du respect des citoyens et de leurs libertés. Elle rejoint sur cette position l’April, la Quadrature du Net, FDN, Amnesty International, la Ligue des Droits de l’Homme, Reporters Sans Frontières, le Centre d’Études sur la Citoyenneté, l’Informatisation et les Libertés, Human Rights Watch, l’ASIC, la Commission nationale consultative des droits de l’Homme, l’Union syndicale des Magistrats, le Conseil national du numérique ou encore l’Ordre des avocats de Paris… et proposera dès la rentrée, des ateliers pour protéger la vie privée des citoyens.

    Nous vous proposons également de réfléchir sur les Communs. La Maison des Biens Communs poursuit son laboratoire d’initiative durant une bonne partie du mois d’août. Ainsi, vous pourrez nous rejoindre à la Coutinelle afin de nous proposer vos idées.

    Les articles récurrents de Montpel’libre sont ainsi diffusés aux dates indiquées ci-dessous :

    • le 20 de mois : Le Logiciel Libre du mois
    • le 22 du mois : Présentation membre
    • le 25 du mois : Programme des activités de Montpel’libre
    • le 28 du mois : Libellule – Le petit journal du libre
    • le 30 juin et le 30 décembre : Calendrier Semestriel

    http://montpel-libre.fr/spip.php?article2487

    Lire les commentaires

  • Mozilla lance la deuxième édition du Winter Of Security (Dépêches LinuxFR)

    Mozilla a récemment annoncé sur son blog l'ouverture des inscriptions pour l’édition 2015 du Winter of Security (MWoS). MWoS est un programme par lequel des étudiants en quête de projets universitaires peuvent travailler avec les projets des équipes sécurité de Mozilla. Chaque projet est encadré par deux mentors et se déroule entre septembre et avril.

    Pour l’édition 2015, Mozilla propose six projets (listés dans la seconde partie de la dépêche) qui vont de la sécurité système à la cryptographie, en passant par la réalité virtuelle. Les projets, en anglais, sont décrits sur le wiki de la fondation.

    Logo

    Les étudiants doivent envoyer leur candidature pour le 15 août 2015 au plus tard. Les équipes sélectionnées seront informées début septembre.

    • MIG: Cross-platform log monitoring for threat detection (supervision multiplateforme de logs pour détection de menace)
    • MIG Agent sandboxing (bac à sable pour l'agent de supervision)
    • Menagerie - a collection of tests and demos for security headers and TLS configurations (ensemble de tests et de démos de configuration TLS et d'en-têtes de sécurité)
    • MozDef Virtual Reality Interface (interface de réalité virtuelle MozDef)
    • Mixed content scanning with OWASP ZAP (analyse de contenus avec OWASP ZAP)
    • Certificate Automation tooling for Let's Encrypt (outil d'automatisation de certification pour Let's Encrypt)

    Lire les commentaires

  • NixOS 14.12, la distribution Linux sans effet de bord (Dépêches LinuxFR)

    Le projet NixOS a sorti le 30 décembre 2014 une version de sa distribution Linux, la 14.12 ou « Caterpillar » de son petit nom. Cette distribution, « The Purely Functional Linux Distribution », est fondée sur le système de paquets Nix et la collection de paquets Nixpkgs. Nix et Nixpkgs sont utilisables avec d'autres systèmes : Linux, OS X, voire FreeBSD.

    Logo nixos

    Nix permet de gérer son système « sans effets de bord », ce qui permet notamment : des mises à jours réversibles, l'installation de paquets sans droits root, le déploiement distribué, les mélanges de paquets sources et binaires.

    Sommaire

    L'écosystème Nix

    Nix permet d'utiliser des paquets binaires, ainsi que des paquets sources, comme sous Gentoo ou Arch. Comme presque tous les systèmes de gestion de paquets, il permet la gestion des dépendances entre paquets. Ses principes de fonctionnement originaux lui permettent d'implémenter de façon sûre des fonctionnalités souvent peu stables ou absentes des autres gestionnaires de paquets. Il s'agit de la poursuite par la communauté du travail commencé par Eelco Dolstra dans sa thèse à la Technische Universiteit de Delft.

    Nixos est une distribution Linux utilisant nix comme système de paquets. Elle permet des mises à jour du système réversibles : si une nouvelle version d'un paquet, du système ou de sa configuration pose problème, on peut revenir à une version précédente en une commande. Elle utilise également le langage nix pour la configuration du système, ce qui permet d'intégrer la configuration entre les différents services, mais aussi d'automatiser le redémarrage des services en fonction des changements de configuration.

    L'écosystème nix va au-delà d'une simple distribution : nixops permet d'orchestrer des réseaux de machines (physiques ou virtuelles), de façon plus simple et plus fiable que les systèmes classiques tel que salt ou puppet. hydra est un système de construction continue : il s'agit d'un programme qui construit en permanence un ensemble de paquets dont on vient lui soumettre de nouvelles versions. Les paquets à construire sont spécifiés dans le langage nix.

    Développer avec nix, ou pourquoi je ne peux plus m'en passer

    Sus au HACKING.txt

    La plupart des projets libres contiennent un fichier HACKING.txt qui indique comment créer un environnement adapté pour le développement du projet. Il faut installer la bonne version du compilateur (parfois avec le patch idoine), les bonnes bibliothèques (elles-même compilées avec les bonnes options par le bon compilateur), puis configurer le projet en fonction de l'environnement (remplacer Makefile.win95 par Makefile.posix suivant le système que l'on utilise).

    En plus de ce fichier, il y a généralement une part de savoir implicite comme, par exemple, « évidemment, si tu utilise nginx au lieu de apache comme serveur web derrière un reverse proxy, il faut utiliser le correctif posté le 30/02/2003 sur le forum bulgare par BabaYaga17 et l'adapter de manière triviale à ton cas ».

    nix permet de regrouper ces savoirs dans un fichier default.nix, qui indique dans quel environnement un projet est développé. Ce fichier est le même qui sera par la suite utilisé pour créer le paquet à installer. La commande nix-shell permet de se placer dans l'environnement dans lequel le paquet sera construit, qui constitue donc un environnement de développement adapté.

    Par exemple nix-shell donne la bonne version de Python et des dépendances.

    On peut également utiliser nix-shell pour lancer un shell où certains paquets sont localement installés. Une fois sortis du shell, il n'y a plus trace du paquet dans l'environnement «principal»

      $ nix-shell -p rustc
      these paths will be fetched (64.72 MiB download, 230.03 MiB unpacked):
      /nix/store/fhy54j59x9mcxn9rjgi6j7w2q6xr769n-rustc-0.12.0
      /nix/store/q4kb35wfj35893z8qddlil98yc1akkgc-stdenv
      fetching path `/nix/store/fhy54j59x9mcxn9rjgi6j7w2q6xr769n-rustc-0.12.0'...
      fetching path `/nix/store/q4kb35wfj35893z8qddlil98yc1akkgc-stdenv'...
      [...]
      $ 
    

    On garde néanmoins une version du paquet «en cache» dans le /store/ nix. Ainsi, si l'on appelle à nouveau nix-shell avec le même argument, ou si l'on construit un paquet dépendant de celui qui est en cache, on n'aura pas à télécharger celui-ci à nouveau, ni à le reconstruire.

    Le résultat : un méta-make

    Là où le confort offert par nix-build et nix-shell apparaît, c'est lorsqu'on a besoin de modifier une bibliothèque dont dépend notre projet (ou tout outil utile à sa construction ou à son déploiement). Si tel est le cas, il suffit de modifier le default.nix pour indiquer de prendre la version locale de cette bibliothèque, comme indiqué ci-dessous.

    todo exemple override
    {src = /home/meredith/projet;}
    

    ou

    todo exemple override
    {src = fetchgit {url = /home/meredith/projet; […];}
    

    À partir de ce moment-là, nix-build agit comme un meta-make : toute modification dans le répertoire indiqué (dans l'exemple 1) ou tout commit dans le dépôt git (de l'exemple 2) provoque une recompilation de la bibliothèque, de ses dépendances inverses et du projet lui-même. On fait ainsi entre les projets ce que make fait pour les différents fichiers à l'intérieur d'un projet.

    Nouveautés dans l'écosystème nix

    La communauté nix continue de s'élargir : depuis la version précédente en avril 2014, de nouveaux contributeurs et contributrices l'ont rejoint et ont apporté leurs contributions sur l'un des dépôts. L'activité sur le canal irc://irc.freenode.net/nixos témoigne d'un gain de popularité avec une affluence de nouveaux utilisateurs. De même, le domaine http://www.haskell.org utilisera bientôt nixops pour orchestrer ses machines.

    Du logiciel tout frais

    Nixpkgs (et donc nixos) contient des versions récentes de la plupart des logiciels courants. En particulier, un système nixos 14.12 disposera de :

    • Linux 3.14 (la version 4.0 est aussi disponible dans les mises à jour)
    • Firefox 39 (via les mises à jour)
    • Gnome 3.12
    • KDE 4.14
    • systemd 217
    • etc.

    Outils autour de Nix

    Les outils autour de nix continuent de s'améliorer, en particulier ceux qui permettent d'utiliser le gestionnaire de paquets depuis la ligne de commande. Deux nouvelles surcouches autour de nix-env et nix-build font leur apparition pour les utilisateurs finaux : nox pour la recherche de paquets (et leur installation) et nix-build-view pour l'affichage de la construction des paquets.

    Pour les contributeurs de nixpkgs, nox-review et nox-pr facilitent la vie.

    nox

    nox est une surcouche de nix-env. Cette application permet de rechercher des paquets et de les installer. La commande nox <motif> affiche une liste des paquets correspondants au motif et propose d'en sélectionner un ou plusieurs à installer.
    nox en action - choix des paquets à installer

    Une commande nox --update devrait bientôt arriver et fournir une alternative plus conviviale à nix-env -u pour les mises à jour des profils utilisateurs, en permettant en particulier de voir pourquoi un paquet donné sera mis à jour.

    nox est aussi nettement plus rapide que nix-env, car il garde un cache de l'ensemble des paquets disponibles.

    nix-build-view en couleur

    Voir l'outil nix-build-view utilisant les ncurses pour un affichage coloré.

    upcast

    upcast est une réécriture de nixops. Il s'agit, comme nixops, d'un outil permettant d'orchestrer un ensemble de machines (physiques ou virtuelles) par nix. On peut ainsi décrire dans un seul fichier toutes les machines et leurs relations. Par exemple, on peut définir que le serveur web de la machine A utilisera la machine B comme base de données.

    Dans les entrailles de Nix

    Luca Bruno alias Lethalman a posté sur son blog une série intitulée « nix pills » qui détaille, en anglais, le fonctionnement de nix. La série comporte 18 posts, depuis une présentation générale de nix, jusqu'au Pourquoi vous devriez l'essayer.

    Lire les commentaires

  • Stagefright, une faille Android qui va faire mal ? (Journaux LinuxFR)

    C'est marrant de voir comment toute faille découverte doit avoir son petit nom maintenant. C'est à celui qui aura la plus grosse le plus de succès.

    Il n'empêche que celle-ci à l'air pas mal. La société Zimperium a annoncée sur son blog la découverte d'une faille qui toucherait 95% des mobiles Android. Celle-ci permettrait d'exécuter du code à distance uniquement avec un numéro de téléphone, le votre, et un MMS.

    La faille se situerait dans la bibliothèque de lecture des fichiers multimédias d'Android. Étant donné que par défaut le MMS s'affiche dès la réception dans une notification, cela suffirait à lancer l'attaque.

    Un patch corrigeant cette faille a d’ors et déjà été transmis à Google qui l'a appliqué mais mettre à jour pas moins 950 millions de mobiles (entres autres) ne sera pas une mince à faire et dépendra de la bonne volonté des constructeurs.

    À savoir que Firefox serait aussi impacté pour les versions inférieures à la version 38.

    Tout cela reste encore au conditionnel car l'histoire ne dévoile pas encore toute son intrigue. L'annonce complète se fera la semaine prochaine au Blackhat USA 2015 et au DEF CON 23.

    En attendant voilà une belle publicité pour cette société spécialisée dans la sécurité des équipements mobiles dont le blog à même du mal à supporter la charge actuelle.

    Lire les commentaires

  • La gouvernance mondiale, le régionalisme en Europe et les conséquences du Traité transatlantique (Journaux LinuxFR)

    Bonjour 'nal,

    J'observais dernièrement que Hervé Couvelard désespère, à l'occasion du journal consacré à la réponse du conseil constitutionnel par rapport au projet de loi relatif au renseignement :

    • de cette société qui n'est plus démocratique ;
    • du fait que les gens se contentent [de pain et] de jeux ;
    • du fait que « tant que cela ne touche pas à leur petit confort, lorsque cela arrivera (et cela arrivera, il ne faut pas en douter — ce que l'on fait à la Grèce, on va nous le faire), ceux qui seraient à même de fédérer un mouvement de révolte seront usés et dégoûtés et laisseront tous les petits chouineurs qui se plaignent sur leur cas dans leur mélasse en se souvenant que ces même chouineurs étaient ceux qui les traitaient de complotistes ».

    Prenant pitié pour lui et ceux de ses contemporains qui ont ouvert les yeux, je te propose dans le présent journal "militant" d'être plus prolixe que jamais — en espérant ne susciter ni indifférence ni mépris —, te donnant à lire la transcription d'une récente intervention de haute tenue de Pierre Hillard, docteur en science politique, à l’antenne de la radio Fréquence Évasion, à propos de la publication en français de l’ouvrage "Histoire secrète de l’oligarchie anglo-américaine" de Carroll Quigley, dont il vante très grandement les mérites (et on le comprend en l'écoutant…) et dont il a rédigé une préface de 27 / 28 pages, mais aussi à propos des avancées du Nouvel Ordre mondial, le régionalisme en Europe et les conséquences du Traité transatlantique.

    Je découvre à cette occasion cette radio "complotiste" et potins de stars, rigolons ensemble, je cite l'accroche : « chaque jour, sur Fréquence Évasion radio : recherches, ovnis, paranormal, faits de société, protection de l'environnement et les rendez-vous avec vos stars préférées, dans "paroles de stars". Fréquence Évasion c'est également la voix des sudistes en principauté de Monaco et dans le grand sud. Fréquence Évasion radio, dites-nous tout, dites-nous tout, dites-nous tout ! »… Bon, à part l'introduction (je vais vous l'épargner) par l'animateur de la radio qui cite le titre de l'ouvrage en le tronquant (il parle de "l'oligarchie américaine" plutôt que de "l'oligarchie anglo-américaine") et se trompe sur le nom de l'auteur (il se trompe en parlant de Karl à la place de Carroll), toute l'intervention de Pierre Hillard est de grande qualité, très pédagogique et accessible. Merci à cette radio d'avoir invité Pierre Hillard à l'antenne, ce qui donne l'occasion de cette transcription pour rendre d'importantes informations accessible aux plus simples des moules qui s'accrochent sur Linuxfr.

    Cher journal, je t'embrasse dès maintenant. Lorsque je finirai la transcription, beaucoup de temps aura passé, je risquerai alors d'oublier cette évidente politesse :) Avant d'entamer la lecture, tu peux prendre note de divers liens utiles, exactement sur le même sujet :

    C'est parti, je vais aérer le texte et disposer quelques repères pour faciliter le référencement dans les commentaires.


    [NdM] Suppression du contenu (transcription complète non-autorisée d'une entrevue)

    [NdM] Suppression de commentaires (contenus insultants ou nauséabonds jouant avec la limite de la légalité)

    Lire les commentaires

  • Parlons XMPP - épisode 6 - les commandes à distance (Journaux LinuxFR)

    (pour lire les épisodes précédents, suivez l'étiquette correspondante)

    Aujourd'hui nous allons parler d'une de mes fonctionnalités favorites dans XMPP : les commandes à distance. Il s'agit de la possibilité pour 2 entités XMPP d'exécuter des actions à distance de manière générique.

    La première méthode, assez peu utilisée à ma connaissance, est via la XEP-0009 (oui c'est une vieille, elle date de 2001), qui donne une méthode pour utiliser XML-RPC à travers XMPP.
    XML-RPC est un Système de communications inter processus, c'est à dire un moyen pour 2 entités de communiquer à distance. Vous pouvez ainsi exécuter des commandes indépendamment du langage de programmation, en ayant des données décrites (est-ce que je reçois un entier ? Une chaîne de caractères ?). Ceci est particulièrement adapté pour la communication de machines à machines, quand on sait déjà quelles méthodes sont disponibles et ce qu'elles font. Le cas type est une interface de programmation (ou API) pour permettre de contrôler quelque chose, comme un serveur par exemple.

    La deuxième méthode est appelée commandes « ad-hoc » (de circonstance), et c'est la XEP-0050 qui les explique. L'idée est aussi de pouvoir exécuter de manière générique des commandes, mais cette fois sans savoir à l'avance ce qui va être disponible, et en pensant plutôt à une interaction humain/machine, bien que machine/machine soit bien sûr tout à fait possible.

    Le cas typique d'utilisation est la configuration d'un service, mais ce peut être utilisé pour n'importe quoi.
    Ce qui rend cette fonctionnalité particulièrement puissante, c'est qu'elle fait partie de XMPP et donc peut profiter de tous ses avantages, en particulier l'authentification forte (quand on parle à server@example.net, on sait qu'on ne parle pas à quelqu'un d'autre) et la liste de contacts (roster) avec leurs groupes. Nous avons ainsi un système de permissions simple à mettre en œuvre et efficace.

    Prenons un exemple: vous êtes administrateur sur Prosody (pour mémoire, un serveur XMPP populaire) – pour cela il vous suffit de donner votre jid dans la variable « admins » dans la configuration –, et vous voulez… pouvoir administrer votre serveur. Pas besoin de s'embêter à avoir une page web dédiée avec mot de passe etc, il vous suffit d'avoir un client XMPP qui gère les commandes ad-hoc (Gajim par exemple), et d'entrer l'adresse de votre serveur.

    Exemple ci-dessous avec Libervia, l'adresse libervia.org est celle du serveur, voici ce que, en tant qu'admin, je peux voir.

    capture d'écran des commandes ad-hoc pour un admin avec Libervia

    Le « Send Announcement to Online Users » (envoyer une annonce à tous les utilisateurs en ligne) est particulièrement utile juste avant une mise à jour.

    Avec un compte lambda, voilà ce que l'on voit :
    capture d'écran des commandes ad-hoc pour un utilisateur lambda avec Libervia

    Malheureusement avec certains clients, l'accès est tout sauf intuitif. Je pense que l'exemple le pire est Psi : pour accéder aux commandes du serveur il faut aller dans la découverte des services (« service discovery ») soit via le menu « General » soit en cliquant droit sur votre profil, puis cliquer sur le nom de votre serveur dans la liste des services, puis enfin cliquer sur l’icône en forme de terminal, appelée « execute command » (exécuter une commande).

    Dans Gajim c'est plus simple (clique droit sur votre profil puis « exécuter une commande »), dans Swift c'est dans le menu Actions => Run Server Command (Exécuter une commande serveur). Si vous voulez exécuter des commandes sur un jid arbitraire dans Gajim, il vous faut passer par le menu « Découvrir les services », comme avec Psi ; je n'ai pas l'impression que ce soit possible avec Swift.

    Ci dessous une capture de Movim, ces commandes sont dans le menu « actions »:

    les actions dans Movim

    Même sans être administrateur, les commandes « ad-hoc » peuvent vous être utiles. Par exemple, vous avez oublié de déconnecter votre client chez vous et vous vous trouvez chez un ami. Il vous suffit de vous connecter, et de spécifier le jid complet, avec la ressource, de votre client à la maison. SàT par exemple vous permet à l'heure actuelle de changer votre statut voire de vous déconnecter. Gajim permet en plus de transférer les messages non lus ou de quitter des salons de discussions.

    Accès à un client Gajim à distance

    Il est facile d'imaginer à quel point cette fonctionnalité peut être utile pour l'administration ou la surveillance de serveurs, pour la robotique, la domotique, le contrôle à distance de votre ordinateur, de votre bot XMPP, etc.

    Voyons un autre cas pratique que nous avons implémenté dans Salut à Toi : on couple les commandes « ad-hoc » avec D-Bus. Pour ceux qui ne connaissent pas, D-Bus est un autre système de communication inter-processus qui a été développé par Freedesktop comme un standard commun dans les bureaux libres, en s'inspirant de l'existant et en particulier du DCOP de KDE. Il est donc très largement utilisé dans les logiciels libres, et permet de piloter beaucoup de logiciels courants.
    En liant D-Bus et ad-hoc, SàT permet de créer très facilement une télécommande universelle, pilotable depuis n'importe quel client XMPP compatible (y compris sur votre téléphone, ce qui est particulièrement intéressant pour une télécommande), et en prime avec gestion des permissions par groupe.

    Cette fonctionnalité est montrée dans le courte vidéo ci-dessous, on autorise les membres du groupe « coloc » à piloter une instance de VLC, pratique quand on fait une séance cinéma dans la colocation :).

    Cliquez sur l'image ci-dessous pour voir la vidéo:
    Télécommande universelle dans Salut à Toi

    Nous allons ajouter également la possibilité d’exécuter des scripts ou des commandes shell, on pourra ainsi très facilement autoriser tous les administrateurs d'un serveur à le redémarrer ou à avoir son statut.

    Petite note sur le fonctionnement : les commandes ad-hoc, comme à peu près tout ce qui demande de la transmission d'informations typées dans XMPP, se basent sur les « Data Forms » (formulaires de données, XEP-0004). Cette extension standardise donc les formulaires, et permet de demander des booléens, des mots de passes ou encore des listes de jids.

    J'en profite aussi pour vous donner le lien vers la conférence « PubSub, microblogage et XMPP » que j'ai faite aux RMLL il y a un peu plus de 2 semaines. J'y explique en 20 min les bases de PubSub et du microblogage dans XMPP, ainsi que l'intérêt des 2 XEPs que nous avons publiées (cf ce journal). J'en reparlerai bien sûr dans un prochain article.

    Bien qu'ayant plusieurs idées en tête, je ne suis pas encore décidé pour le prochain article, il est possible que je parle de PubSub, de copie de fichiers, de chiffrement de bout en bout, ou de tout autre chose…

    Lire les commentaires

  • J'aime bien l'esprit (Journaux LinuxFR)

    Alors que je m’apprêtais à faire un petit parseur de page leboncoin pour scruter automatiquement un objet, imaginez ma surprise quand je suis tombé sur :

    <!--
        / \    We're hiring. Now.
       /   \
      /     \  You have good knowledge of C and SQL, keep a Bash manual
     |\     /| under your pillow and toy around with pipes better
     | \   / | Mario and Luigi? If so, we want you! We have various
     |  \ /  | IT positions to offer, ranging from PHP/JS front-end jobs
     |   |   | to C and SQL back-end "under the hood" hairy stuff.
      \  |  /
       \ | /   https://corporate.leboncoin.fr/nos-offres/
        \ /
    -->
    

    Franchement j'ai trouvé ça excellent de mettre une annonce dans le code source des pages.
    Du coup je partage ;-)

    Lire les commentaires

  • Gérer son espace de travail git avec "gws" (Dépêches LinuxFR)

    gws est un outil KISS (script bash, compatible zsh) pour gérer de manière simple un espace de travail composé de plusieurs dépôts git. Ça ne vous parle pas et vous semble être un pitch commercial ? Laissez-moi l'aborder autrement ; si vous vous reconnaissez dans quelques-unes de ces questions, cet outil pourrait vous être utile :

    • Vous avez un dossier ~/dev/, ~/code/ ou ~/workspace/ dans votre répertoire personnel ?
    • Vous y avez cloné dedans plein de dépôts git ?
    • Vous ne savez jamais quels dépôts, branches, commits n'ont pas été synchronisés ?
    • Vous en avez marre d'avoir à faire 17 git pull manuellement le lundi matin au boulot ?
    • Vous déprimez en arrivant dans le train de voir que vous n'avez pas récupéré votre dernier projet sur votre ordinateur portable ?

    Comment ça marche?

    1. Premièrement créez dans votre répertoire (~/dev/ par exemple) un fichier .projects.gws avec un contenu de ce style (que vous adapterez à vos besoins bien sûr):
    tools/coursera-dl | https://github.com/dgorissen/coursera-dl | 
    tools/peru | https://github.com/buildinspace/peru | 
    tools/q | https://github.com/harelba/q | 
    work/docker-gitlab | https://github.com/sameersbn/docker-gitlab.git | 
    work/neuraltalk | https://github.com/karpathy/neuraltalk.git |
    
    1. Lancez gws update qui va cloner tous les dépôts manquants : gws update
    2. Hackez un peu !
    3. Lancez gws pour voir l'état de votre espace de travail (dépôts, branches) en un clin d’œil : gws update
    4. Faites éventuellement un pull fast-forward avec la commande gws ff. Vous aurez ainsi avec vous la dernière version de tous vos projets. Très utile avant de partir prendre le train.
    5. Avant de partir du boulot, faites un petit gws à nouveau pour être sûr que vous avez bien synchronisé tous vos changements, par exemple pour retrouver vos fichiers de configuration en arrivant à la maison.

    Il y a bien quelques possibilités en plus, mais je vous laisse le soin de lire le README (en anglais) pour la liste exhaustive des possibilités. Juste un petit aguichage/teasing rien que pour vous :

    • La commande gws est utilisable depuis n'importe quel endroit de l'espace de travail.
    • Vous pouvez créer plusieurs espaces de travail différents, faites plusieurs dossiers avec chacun son propre .projects.gws
    • En versionnant le fichier .projects.gws sur github, par exemple, vous pouvez vous retrouver avec exactement le même workspace sur tous vos ordinateurs.
    • Si vous le versionnez, vous pouvez même rajouter le dossier courant (. | … |) dans le fichier .projects.gws pour le surveiller aussi.
    • Il y a possibilité de mettre un fichier .ignore.gws que vous ne versionnerez pas pour filtrer avec des expressions rationnelles certains projets — par exemple les projets du boulot à la maison.

    Où je le trouve?

    Il est disponible sur Github et empaqueté pour Arch Linux. Pour les autres distributions, c'est un simple script bash, mettez-le quelque part dans votre $PATH. Ou mieux, faites-en un paquet.

    PS : Et pour répondre d'avance à la question: «Un script bash de 830 lignes, t'es malade?» je vous réponds: YOLO1.


    1. Mais oui si c’était à refaire je choisirais un autre langage. C'est impossible à maintenir un script bash de cette taille. J'ai dans l'idée, un jour, de le réécrire dans un autre langage et de supporter plus de VCS (mercurial, svn, …) et plus d'options. Un jour… qui sait. 

    Lire les commentaires

  • GnuPG et authentification SSH (Journaux LinuxFR)

    Vous avez maintenant votre clé PGP et la traînez un peu partout avec vous. Il s'agirait maintenant de mettre cette clé unique à profit. Et quoi de mieux que de commencer avec l'authentification SSH ?

    Ça tombe bien, l'agent GnuPG peut aussi agir comme agent SSH et ainsi servir d'intermédiaire entre SSH et votre clé PGP stockée sur votre clé physique.

    On va d'abord commencer par changer un peu la configuration de GnuPG afin d'afficher l'usage réservé aux clés. Ça permettra de retrouver facilement la clé d'authentification. Il suffit d'ajouter la ligne suivante dans le fichier ~/.gnupg/gpg.conf :

    list-options show-usage

    Voilà maintenant la commande gpg2 -k listera les clés ainsi que leur usage. S pour signature, E pour chiffrement et A pour authentification. C'est cette dernière qui nous intéresse.

    La prochaine étape est d'indiquer à GnuPG qu'il pourra utiliser notre clé d'authentification pour SSH. Pour cela on rajoute la poignée de la clé (keygrip) dans le fichier ~/.gnupg/sshcontrol.

    $ gpg2 -k --with-keygrip 
    /home/jdoe/.gnupg/pubring.gpg
    ------------------------------
    pub   rsa4096/AABBCCDD 2015-XX-XX [SC] [expire : 2018-XX-XX]
     Empreinte de la clef = AABB CCEE XXXX XXXX XXXX  XXXX XXXX XXXX XXXX FFGG
          Keygrip = AABBCCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXDD
    uid       [ultimate] John Doe <john.doe@example.com>
    uid       [ultimate] [jpeg image of size 47XX]
    sub   rsa2048/BBCCDDEE 2015-XX-XX [S] [expire : 2016-XX-XX]
          Keygrip = BBCCDDXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXEE
    sub   rsa2048/CCDDEEFF 2015-XX-XX [E] [expire : 2016-XX-XX]
          Keygrip = CCDDEEXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXFF
    sub   rsa2048/DDEEFFGG 2015-XX-XX [A] [expire : 2016-XX-XX]
          Keygrip = DDEEFFXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXGG

    On repère la clé d'authentification DDEEFFGG avec la poignée associée que la va rajouter au fichier ~/.gnupg/sshcontrol.

    $ echo "DDEEFFXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXGG 0" >> ~/.gnupg/sshcontrol

    Le chiffre après la poignée est la durée en seconde que l'agent pourra garder la clé en mémoire. Si 0 la valeur par défaut est utilisée qui est de 30 minutes.

    Il faut maintenant activer le support SSH dans l'agent GnuPG. Pour cela, on édite le fichier ~/.gnupg/gpg-agent.conf et on y insère les lignes suivantes :

    enable-ssh-support
    pinentry-program /usr/bin/pinentry-gtk
    #allow-emacs-pinentry

    Pour ceux qui utilisent Emacs, la dernière ligne peut être utile. L'interface pinentry est aussi disponible en Qt ou curses. Consultez votre gestionnaire de paquets pour installer l'interface qui vous convient.

    Si vous utilisez systemd et une unité utilisateur, il faudra relancer l'agent afin de prendre en compte la nouvelle configuration.

    $ systemctl --user restart gpg-agent.service

    La dernière étape est de configurer votre environnent afin de permettre à SSH de trouver l'agent GnuPG. Il suffit d'exporter les bonnes variable d'environnement dans le script d'initialisation de votre shell.

    export GPG_TTY=$(tty)
    unset SSH_AGENT_PID
    if [ "${gnupg_SSH_AUTH_SOCK_by:-0}" -ne $$ ]; then
      export SSH_AUTH_SOCK="${HOME}/.gnupg/S.gpg-agent.ssh"
    fi

    J'ai aussi eu un petit soucis avec SSH ne sachant pas sur quelle affichage demander le code PIN. Il faut donc aussi lors de l'initialisation du shell indiquer l'affichage à utiliser. La ligne suivante devrait faire l'affaire :

    echo "UPDATESTARTUPTTY" | gpg-connect-agent > /dev/null 2&>1

    Voilà, tout est prêt sauf un petit détails. Où trouver la clé publique au format reconnu par OpenSSH ? ssh-add -L est ton ami. L'empreinte de la clé sera indiquée avec le label cardno:_#SERIE_. Il suffit ensuite d'ajouter cette empreinte au fichier ~/.ssh/authorized_keys sur le serveur distant comme à l'accoutumé.

    Vous pouvez maintenant profiter de l'authentification SSH par clé publique avec votre clé PGP.

    Lire les commentaires

  • Aidez à tester la bêta de Privacy Badger 1.0 pour Firefox (Journaux LinuxFR)

    Logo de Privacy Badger

    Bonjour Nal,

    Privacy Badger est une extension pour Chrome et Firefox (et, à terme, aussi pour Opera, Safari et Firefox Mobile) produite par l'EFF (The Electronic Frontier Foundation), qui désactive au fur et à mesure les sites tiers qui pistent votre surf.

    Il utilise en effet une méthode heuristique (plutôt qu'une liste noire préconstituée comme c'est le cas généralement pour les autres outils de blocage) c'est à dire que Privacy Badger va observer quels sites tiers reçoivent des requêtes des sites que vous visitez pour repérer lui-même les sites tiers qui vous suivent de sites en sites.

    Une fois les sites tiers pisteurs repérés, il les désactive, à moins que cela ne casse le site visité : auquel cas il se contente de supprimer les cookies déposés par ces sites tiers. Vous pouvez également modifier le degré de blocage en ajustant manuellement un curseur.

    La version 1.0 devrait sortir sous une semaine, et vous pouvez tester la version 1.0 beta (aka 0.99) en la téléchargeant sur le site de l'EFF et en rapportant les anomalies sur le GitHub du projet.

    Rappelons, avec Wikipédia, que l'EFF « est une organisation non gouvernementale internationale à but non lucratif, fondée en 1990 aux États-Unis par Mitch Kapor, John Gilmore, et John Perry Barlow, connu pour être l'auteur de la Déclaration d'indépendance du cyberespace » et dont l'objectif essentiel « est de défendre la liberté d'expression sur Internet ».

    Avec Mozilla et l'EFF, deux organisations à but non lucratif, vous êtes entre de bonnes mains :)

    Lire les commentaires

  • Développer des applications mobiles multiplateformes avec Java… avec le framework Codename One (Dépêches LinuxFR)

    Codename One est un framework permettant de développer en natif pour iOS, Android, BlackBerry et Windows Phone à partir d'un unique code Java.

    Il est open-source (licence GPL avec exception Classpath) et se présente sous la forme d'un plug-in disponible pour les trois environnements de développement majeurs en Java (NetBeans, Eclipse, IntelliJ IDEA (NdM: les deux premiers sont sous licence libre, le dernier existe en version "Community" libre et en version propriétaire). Il a pour particularité d’utiliser le cloud pour la compilation, ce qui évite aux développeurs d'avoir à installer divers SDK ou de posséder un système d’exploitation spécifique indispensable à la programmation des applications pour certaines plateformes mobiles.

    Il a été créé par deux anciens ingénieurs d'Oracle, Chen Fishbein et Shai Almog, ceux-là mêmes qui mirent au point la bibliothèque d'interface graphique LWUIT, qui eut son âge d'or à l'heure où le J2ME régnait encore dans le monde de la téléphonie avant d'être détrôné par l'iPhone.

    Codename One produit du code natif optimisé, assurant à ses applications de meilleures performances. (NdM: l'accès au code source natif produit n'est pas fourni dans l'offre gratuite de Codename One).

    Le plug-in est composé d'une API contenant toutes les classes nécessaires à la conception d'une application mobile, d'un designer, d'un simulateur pour tester les applications sur son ordinateur et du serveur de compilation dans le cloud.

    L’une des grandes particularités de Codename One est son architecture dite « lightweight » qui apporte une meilleure solution aux problèmes de fragmentation des plateformes mobiles. Un composant lightweight dans ce cas-ci est un composant écrit entièrement en Java qui dessine sa propre interface tout en gérant ses propres événements et états. Cette manière de faire apporte un énorme avantage en termes de portabilité puisque le même code est exécuté sur toutes les plateformes en plus d’autres avantages. Les composants graphiques de Codename One sont personnalisables.

    L’API de Codename One couvre de nombreuses fonctionnalités. On peut y trouver ce qu’il faut pour faire, par exemple, les tâches suivantes :

    • l'interface graphique ;
    • la manipulation de la vidéo et de l’audio (enregistrement comme affichage) ;
    • le stockage ;
    • l'accès à la caméra ;
    • la manipulation d'une base de données SQLite ;
    • la manipulation des services web ;
    • le réseau ;
    • l'accès au cloud ;
    • la lecture des codes barres et QR codes ;
    • l’internationalisation et la localisation ;
    • les notifications ;
    • la manipulation des contacts ;
    • l'accès aux pages web ;
    • la monétisation ;
    • l’accès aux réseaux sociaux ;
    • la géolocalisation ;
    • les tests unitaires ;
    • la création de thèmes personnalisés ;
    • etc.

    Codename One est orienté exclusivement vers la conception d’applications métiers et n’a pas du tout été pensé pour créer des jeux. Quelques efforts sont en train d’être faits dans ce sens, mais rien de concret n’est encore disponible de ce côté.

    Pour s'y former, vous disposez de la documentation officielle, complétée par de nombreux articles et tutoriels vidéo, ainsi qu'un forum très actif (en anglais). En outre, un livre vient de paraître en français aux éditions D-BookeR.

    Lire les commentaires

  • Structuration de l'offre de services autour du gestionnaire libre de projets ProjeQtOr (Dépêches LinuxFR)

    Depuis 2009 le logiciel libre de gestion de projets ProjeQtOr (fonctions détaillées en seconde partie de la dépêche) a grandi autour d'une communauté grandissante d'utilisateurs et quelques volontaires fortement impliqués.

    Conçu et développé par des chefs de projet pour des chefs de projet, ce logiciel apporte aujourd'hui une alternative crédible aux logiciels propriétaires.

    Pour pérenniser le produit, développer sa notoriété et garantir la fourniture de services de qualité, son concepteur et développeur principal, Pascal BERNARD, vient de constituer la Société par Actions Simplifiée (SAS) ProjeQtor.

    Implantée en région toulousaine, cette société propose des services professionnels à haute valeur ajoutée autours du logiciel libre ProjeQtOr :

    • hébergement en mode SaaS,
    • support professionnel,
    • assistance et formation,
    • réalisation d'évolutions à la demande,
    • fourniture de plug-ins sur des besoins particuliers.

    Logo ProjeQtOr

    ProjeQtOr est un logiciel libre de gestion de projets, diffusé sous la licence Open Source GPL V3. Son objectif est de regrouper dans un outil unique toutes les fonctionnalités de la gestion de projets, de manière pragmatique, en garantissant une utilisabilité maximale.

    Il propose dans sa version actuelle (V5) une couverture fonctionnelle qui a peu d'égaux, même parmi les ténors du domaine :

    • gestion des délais (calcul du planning)
    • gestion des coût (suivi des données financières)
    • gestion des aléas (suivi des incidents, des demandes, du support)
    • gestion de la qualité (production d'indicateurs, génération d'alertes, traçabilité)
    • gestion des risques (identification, qualification et plan d'action)
    • gestion des ressources (affectations multi-projets, répartition de la capacité)
    • maîtrise des engagements (suivi des exigences, couverture par les tests)
    • maîtrise du périmètre (suivi des réunions, des questions, des décisions)

    Il est a noter que ProjeQtOr est diffusé sous une seule licence. Toutes les fonctionnalités sont donc disponibles librement.

    Lire les commentaires

Cette chose toutes choses dévore:
Oiseaux, bêtes, arbres, fleurs;
Elle ronge le fer, mord l'acier;
Réduit les dures pierres en poudre;
Met à mort les rois, détruit les villes
Et rabat les hautes montagnes.
-- J.R.R. Tolkien, "Bilbo le Hobbit"