Coccigrep, un grep sémantique pour le langage C basé sur Coccinelle

Posté par  (site web personnel) . Modéré par patrick_g. Licence CC By‑SA.
45
2
sept.
2011
C et C++

Lorsque l'on travaille sur un projet C comportant un certain nombre de fichiers et de lignes de code, il arrive fréquemment que l'on se pose des questions comme "Mais où est modifié le champ data de ma structure Packet ?". grep ne suffit pas pour répondre à ce genre de questions car ne comprenant pas C, il ne sait pas, par exemple, que la variable monbopkt est une structure Packet.

coccigrep, basé sur coccinelle qui est un outil très puissant de recherche et de modification automatique de code, est un logiciel libre chargé de répondre à ce genre de questions. Il vient d'être publié en version 1.0rc1, sous licence GPL v3. Il est écrit en Python et s'interface avec les éditeurs Vim et Emacs, ce qui permet de faire les recherches depuis l'éditeur.

UnQL : all your bases are belong to us

Posté par  . Modéré par baud123. Licence CC By‑SA.
Étiquettes :
31
2
sept.
2011
Base de données

Le mois dernier, Richard Hipp et Damien Katz (respectivement, les créateurs de SQLite et CouchDB) ont annoncé la création d'un groupe de travail ouvert autour d'un nouveau langage de requêtes pour les bases de données NoSQL : UnQL (Unstructured Query Language). L'objectif étant de libérer les bases de données orientés documents des interfaces spécifiques et éviter la dépendance envers un fournisseur.

Sundown, Houdini et Crustache

Posté par  (site web personnel) . Modéré par Florent Zara. Licence CC By‑SA.
Étiquettes :
22
2
sept.
2011
C et C++

Vicent Martí, aka tanoku, est un des développeurs de github qui aime bien coder en C. Ce n'est donc pas très étonnant de trouver sur son compte github des bibliothèques en C pouvant servir au développement d'applications web. Je souhaite en particulier vous évoquer de trois bibliothèques sous licence ISC :

Crustache est une implémentation en C de Mustache, un moteur de templating. Des bindings pour Ruby sont également disponibles dans le dépôt git.

Houdini permet d'échapper des chaînes de caractères en UTF-8 pour le web. Et de faire l'inverse. Les trois types d'échappement sont :

  • convertir &, ", ', <, > et / en leur entité HTML correspondante (conformément à la recommandation de l'OWASP) ;
  • échappement des URI respectant la RFC ;
  • et échappement des URL (la différence avec l'échappement des URI est le remplacement des espaces par des +).

Et enfin, Sundown est un fork de libupskirt. Il permet de convertir du texte en Markdown vers du HTML. Nous utilisons Redcarpet, les bindings Ruby autour de Sundown, pour LinuxFr.org du fait de ses performances et de ses nombreuses options.

Témoignage de Lars Wizenius : les 20 ans de Linux, souvenirs personnels

Posté par  . Modéré par baud123. Licence CC By‑SA.
74
1
sept.
2011
Linux

Je vous propose ci-dessous une traduction de ce poignant témoignage sur la genèse de Linux, par Lars Wirzenius.
Lars, camarade d'université de Linus, pose ici un œil très rafraichissant sur la personnalité de Linus, et la manière dont cette personnalité lui a permis de réaliser son noyau.

Bon, j'arrête d'essayer d'écrire et vous laisse découvrir l'article en question.

Ah oui, une dernière chose quand même : merci à tous les contributeurs qui ont participé à cette traduction.

Les serveurs de kernel.org ont été compromis

Posté par  (site web personnel) . Modéré par Xavier Teyssier. Licence CC By‑SA.
76
1
sept.
2011
Administration système

Pour télécharger les sources du noyau Linux il faut aller sur kernel.org. C'est là que sont rassemblés les archives des différentes versions et c'est là que se trouvent les différentes branches git de nombreux développeurs.

Les responsables du site viennent d'annoncer (voir la partie news en bas de la page) que le serveur Hera avait été compromis, et ce au moins depuis le 28 août. Le pirate a modifié les binaires SSH du système et il a ajouté un cheval de Troie dans les scripts de démarrage.
Bien évidemment les administrateurs ont immédiatement isolé la machine et sont en train de tout passer au peigne fin pour comprendre l'origine de la compromission et pour évaluer les dégâts. Il faudra au minimum que les centaines de développeurs utilisant directement kernel.org changent leur clé SSH et que les tarballs disponibles soient régénérés (puisqu'elles ont été signées avec une clé présente sur le serveur compromis).

En revanche il n'y a, à priori, pas d'inquiétude à avoir en ce qui concerne les sources du noyau. La conception même de git, avec les sommes de hachage SHA-1 calculées pour chaque commit et chaque fichier source, empêche d'implanter une backdoor. Celui qui tenterait cela serait immédiatement détecté puisque les centaines de développeurs du noyau qui ont une copie git des sources recevraient alors une alerte au premier commit.

Jonathan Corbet, éditeur du site LWN, a rapidement publié un article sur le site linux.com pour expliquer ce fait et pour couper court aux articles catastrophistes que les journalistes n'allaient pas manquer de publier.
L'état de la presse étant ce qu'il est, nous savons tous que cet article de Jonathan n'empêchera pas les gens de dire n'importe quoi….

Vulture 2.0 beta disponible

Posté par  (site web personnel) . Modéré par patrick_g.
16
2
sept.
2011
Sécurité

Le code source de la version 2.0 de Vulture est disponible, sous licence GPL v2. Vulture est une solution Web-SSO basée sur une technologie de proxy inverse implémentée sur le socle Apache. Vulture implémente également des fonctionnalités de firewall applicatif.

Nouvautés

Les principaux changements par rapport à la version 1.99 sont :

  • le passage à Django pour l’interface d’administration ;
  • le passage à SQLite3 ;
  • le découpage du code Perl suivant l’API Apache, ce qui améliore la lisibilité du code ;
  • le passage à ModSecurity 2.6.1 :
    • Support du moteur de détection par scoring ;
    • Embryon de gestion des politiques depuis l’interface ;
    • Mise à jour des règles ModSecurity.org depuis l’interface.

Il s’agit encore d’une version beta, quelques bugs subsistent, mais l’essentiel pour commencer à tester est là… avis aux amateurs ! Pour récupérer le code : svn checkout http://vulture.googlecode.com/svn/trunk/ vulture-read-only

Make.opendata.ch 2011 – Le premier campus open data en Suisse

Posté par  (site web personnel) . Édité par baud123. Modéré par patrick_g.
Étiquettes :
12
2
sept.
2011
Open Data

Pour une plus grande démocratie directe des données en Suisse

Après avoir lancé le débat dans les médias et les milieux politiques, il est temps que le libre accès aux données publiques (Open Government Data) devienne en Suisse une réalité. Le 30 septembre et le 1er octobre 2011 se tiendra à Lausanne et à Zurich le premier campus « make.opendata.ch ». En utilisant les outils informatiques et les données publiques déjà disponibles, designers, développeurs et journalistes explorerons les potentialités offertes par l’utilisation nouvelle et innovante des données publiques. En effet ces données statistiques, géographiques, économiques, etc. peuvent être retravaillées, croisées entre elles et visualisées d'une manière nouvelle pour ainsi donner naissance à de nouveaux services tout en favorisant la transparence de l'action publique.

Clé web USB et sécurité

80
31
août
2011
Sécurité

C'est l'histoire d'une personne qui reçoit un gros document papier, contenant une clé USB en forme de clé de porte (voir la photo en seconde partie de la dépêche). On se dit que la clé USB doit contenir la version numérique du document papier, et on branche négligemment l'objet sur son ordinateur.

Une fois branchée sous Windows, la clé ouvre la fenêtre Exécuter avec le raccourci clavier [Touche windows+R], tape une adresse HTTP de site web et confirme la demande. On se retrouve avec un navigateur (disons Internet Explorer par défaut sous Windows) qui ouvre un site distant inconnu. En l'occurrence la clé pointe vers le site du vendeur de ce gadget (l'adresse était en erreur la première fois que je l'ai branchée…), qui lui-même pointe vers le site désiré par l'acheteur de cet objet promotionnel.

Sortie de Ruby on Rails 3.1.0

Posté par  (site web personnel) . Modéré par patrick_g. Licence CC By‑SA.
28
1
sept.
2011
Ruby

Ruby on Rails est un framework de développement web agile, sous licence MIT. Après 8 releases candidates, la version 3.1.0 est sortie aujourd'hui.

Les nouveautés sont nombreuses mais les plus importantes sont :

  • jQuery est devenu le framework javascript par défaut (à la place de Prototype) ;
  • L'Asset Pipeline permet de gérer la compilation, la minification et la gestion des dépendances pour les feuilles de style et le fichiers javascript ;
  • Sass et CoffeeScript sont maintenant proposés par défaut ;
  • Les migrations SQL ont été revues (plus simples à écrire mais également plus de possibilités offertes) ;
  • Les réponses peuvent être envoyées en plusieurs morceaux (HTTP streaming), ce qui peut être utilisé pour optimiser le temps de chargement des pages ;
  • La documentation de l'API utilise maintenant SDoc.

Note : il est prévu que LinuxFr.org passe rapidement à cette version.

Dr. Geo 11.08

Posté par  (site web personnel) . Modéré par patrick_g.
17
1
sept.
2011
Éducation

Dr. Geo 11.08 est un environnement pour enseigner et apprendre la programmation dans un contexte de géométrie euclidienne interactive, de l’école primaire au lycée.

Cette version 11.08 propose une accélération du rendu, des correctifs et des améliorations sur l'ergonomie : utilisation avec tablette, sélection graphique de figures à ouvrir, etc.

Soirée du Libre à Nîmes - Mardi 6 septembre 2011 à 19h Epicerie Crocobio

Posté par  . Modéré par baud123. Licence CC By‑SA.
7
1
sept.
2011
Lug

L'Association Gard-Linux organise sa réunion de rentrée -ouverte à tous- ce mardi 6 septembre 2011 à 19h. Au menu: Linux et les Logiciels libres.

Le lieu : Épicerie Crocobio, 18, rue des PLATANETTES, NÎMES
Le repas est possible (prix modique) mais non obligatoire.

(Route d’Arles : portail blanc qui fait l’angle entre la route d’Arles et la rue des Platanettes ; ne pas s’engager dans la rue des Platanettes, c’est juste en face de la station service. Au fond du parking.)

Pour vous renseigner :

Venez nombreux nous retrouver en ce début d'année (scolaire), pour discuter dans la bonne humeur de nos activités pour l'année 2011-2012.

Sortie de MongoDB 2.0 RC

Posté par  (site web personnel) . Modéré par Lucas Bonnet. Licence CC By‑SA.
Étiquettes :
19
31
août
2011
Base de données

Moins de dix mois après la sortie de sa dernière version stable, l'entreprise 10gen a sorti la nouvelle mouture de sa base de données : MongoDB 2.0. Cette version ne propose rien de révolutionnaire, mais apporte tout de même un certain nombre de fonctionnalités appréciables. On retrouvera notamment :

  • la journalisation activée par défaut ;
  • l'amélioration de l'efficacité spatiale et temporelle des index ;
  • la gestion plus fine des priorités pour la réplication ;
  • et la datacenter awereness de certaines opérations.

N. D. M. : MongoDB est publiée sous licence AGPL v3.0.

N. D. M. : la version 2.0 de MongoDB n'est encore qu'en release candidate.

Petites brèves : ebooks, nwm et Cloud Foundry

Posté par  (site web personnel) . Modéré par patrick_g. Licence CC By‑SA.
Étiquettes :
23
31
août
2011
Technologie

Apprendre un langage

Si vous souhaitez apprendre un langage de programmation, deux livres au format électronique peuvent vous aider : Learning Go et Smooth CoffeeScript, qui parlent respectivement — vous l’aurez deviné — des langages Go et CoffeeScript. Ils sont tous deux sous une licence Creative Commons (CC by-nc-sa pour le premier et CC by pour le second) et bien écrits.

Le gestionnaire de fenêtres nwm

Dans le cadre de la compétition Node.js Knockout, le projet nwm est apparu. Il s’agit d’un gestionnaire de fenêtres sous Node.js qui utilise la libev pour communiquer avec X11. Le projet est encore très instable, mais mérite un petit clin d’œil.

Cloud Foundry

Cloud Foundry est une solution de « Platform as a Service » (PaaS) libre développée par VMware. Elle rencontre un certain succès, et des partenariats se sont montés :

  • la partie cliente et la partie serveur de Cloud Foundry sont empaquetées dans la prochaine version d’Ubuntu, et il semblerait que Canonical ne souhaite pas en rester là ;
  • VMware travaille avec Dell pour intégrer Cloud Foundry à Crowbar, l’outil d’installation de nuages de Dell ;
  • Opscode a écrit des recettes du chef pour déployer simplement Cloud Foundry.

LDAPcon 2011

Posté par  (site web personnel, Mastodon) . Modéré par rootix. Licence CC By‑SA.
Étiquettes :
10
31
août
2011
Communauté

La prochaine conférence internationale sur LDAP aura lieu les 10 et 11 octobre 2011 à Heildelberg en Allemagne.

C'est la troisième édition de cette conférence, la première ayant eu lieu en 2007 à Cologne (Allemagne) et la seconde en 2009 à Portland (États-Unis).

Cette conférence permet aux principaux acteurs du secteur de venir présenter leurs réflexions sur le standard LDAP et les évolutions des applicatifs (serveur LDAP, outils d'administration, etc.). L'entrée est payante (520 € pour les deux jours), mais les étudiants peuvent faire une demande pour obtenir des tarifs préférentiels.

Bien que les conférences soient en anglais, on notera la présence de nombreux intervenants francophones, membres des communautés ApacheDS, OpenDJ, LSC ou encore LemonLDAP::NG.

LiveDVD Gentoo 11.2

Posté par  . Modéré par patrick_g.
Étiquettes :
51
30
août
2011
Gentoo

Le 7 août 2011 est paru le liveDVD Gentoo 11.2. Son nom de code est « The future is now ». Cette dépêche est en partie traduite de l'annonce officielle. Ce LiveDVD vous permettra de découvrir Gentoo et de bénéficier d'un environnement propice à l'installation en suivant le « Handbook »

Un peu d'histoire.

Gentoo Linux est la distribution source la plus connue et fait partie des incontournables, et ce depuis plusieurs années maintenant. Nombreux sont ceux qui en ont au moins entendu parler. Certains l'ont essayé, d'autres définitivement adopté. Elle nourrit de nombreux trolls sur la vitesse supposée apportée par l'optimisation des packages à la plate-forme sur laquelle elle est compilée.

La première parution de Gentoo date du 31 mars 2002. Daniel Robbins, en créant tout d'abord Enoch, voulait une distribution qui soit adaptée au matériel et qui serait compilée directement sur le système cible. Son système de gestion de package, Portage, est très largement inspiré des ports bien connus de nos amis de FreeBSD. Les USE Flags permettent de définir dynamiquement les dépendances à la compilation. Des profils existent, proposant une collection de USE Flags par défaut en fonction du type de machine que l'on veut. Elle peut aussi bien s'adapter à un serveur qu'à une station Real-Time pour la MAO.

Elle fait partie des distributions fonctionnant sur le plus grand nombre d'architectures matérielles différentes, faisant presque jeu égal avec Debian.

Ses particularités sont, outre le système de USE Flags, un système d'init, compatible System V mais utilisant des « soft runlevels » nommés. L'utilisateur est libre de créer ses propres runlevels permettant, par exemple, d'éteindre certains services lors du débranchement du câble d'alimentation d'un portable.

Sa riche documentation accompagne aussi bien le débutant que le confirmé et la communauté reste toujours active, que ce soit au sein du Gentoo Wiki (Wiki non-officiel mais regroupant foule de tutoriels et trucs et astuces) qu'au sein des Overlays, dépôts de programmes alternatifs attendant d'intégrer l'arbre officiel ou restant pour toujours en dehors. Les forums débordent d'informations utiles et parfois trollesques, mais on y est toujours bien accueilli pourvu que l'on ait un peu lu la documentation auparavant.

On compte quelques distributions dérivées, les plus connues étant Funtoo — animée par Daniel Robbins —, Sabayon — qui propose des paquets pré-compilés — et enfin, le SystemRescueCD bien connu par nombre d'entre vous ici.

Téléchargement

Le LiveDVD existe en deux saveurs :

  • une version hybride x86/x86_64 qui fonctionnera sur les processeurs 32 ou 64 bits (choix du kernel au démarrage) ;
  • une version x86_64 multilib qui ne fonctionnera qu'en 64 bits, mais permettra de compiler des applications 32 bits (Wine par exemple).