PROJET AUTOBLOG


Planet-Libre

source: Planet-Libre

⇐ retour index

Noireaude : G’MIC pour Gimp disponible en version 1.5.7.2

lundi 28 octobre 2013 à 21:03

G’MIC (GREYC’s Magic for Image Computing) est une petite collection de plus de 500 filtres et effets pour Gimp, qui peut au choix s’utiliser en ligne de commande ou sous la forme d’un plugin à installer. Vous vous en avions déjà parlé dans ce billet. La version 1.5.7.2 de G’MIC a été publié récemment, embarquant quelques améliorations et diverses corrections de bugs. On notera l’ajout de nouvelles commandes, de nouvelles expressions, l’introduction d’un nouveau filtre de rendu Gradiant/Radiant, l’amélioration du traitement multi-thread et diverses corrections de bugs.

Si vous avez envie d’essayer cette nouvelle version de G’MIC, il suffit de vous rendre sur la page de téléchargement du site officiel où vous trouverez les sources pour GNU/Linux, les .deb et les binaires pour les autres OS. Si vous tournez sous Ubuntu et dérivés vous pouvez également installer G’MIC via le PPA suivant, à l’aide de ces quelques lignes de commande.

Installer G’MIC sur Ubuntu et dérivés :

sudo add-apt-repository ppa:otto-kesselgulasch/gimp
sudo apt-get update
sudo apt-get install gimp-gmic gmic

Désinstaller G’MIC :

sudo ppa-purge ppa:otto-kesselgulasch/gimp

ou

sudo add-apt-repository -r ppa:otto-kesselgulasch/gimp
sudo apt-get update
sudo apt-get remove gimp-gmic gmic

Si ça vous intéresse vous pouvez également vous rendre sur la page suivante pour consulter la liste complète des changements.

Amusez-vous bien avec vos nouveaux filtres :)

source

Gravatar de Noireaude
Original post of Noireaude.Votez pour ce billet sur Planet Libre.

Cyprien Pouzenc : Lecteur de flux RSS FreshRSS

lundi 28 octobre 2013 à 18:47

Logo de FreshRSS

On ressent parfois un étrange sentiment en apprenant quelque chose que l'humanité toute entière semble savoir depuis la sortie de Super Mario Bros.

L'art de raconter sa vie

Mais comment ai-je bien pu passer à coté ?

Moi-même

C'est à peu de chose près la question qui m'a traversé l'esprit quand Google a annoncé vouloir fermer les portes du service Google Reader dont j'ignorais qu'elles avaient été ouvertes un jour. Étonnant. J'ai finalement pris cela avec fierté, comme le diplôme bien roulé dans un ruban récompensant le parfait clampin dé-google-isé. Et à la seule force mentale, jeune Padawan ; sans timbre transdermique ni cachet.

Avant, j'utilisais un lecteur de flux RSS...

Il s'est alors mis à pleuvoir. Faiblement d'abord, puis à verses. Sortant mon para-lecteur-de-flux pour me protéger du déluge, j'imagine ainsi que le service devait rencontrer un certain succès. Partant du principe que les copies devaient forcément être meilleures que l'original, j'ai patiemment attendu la fin de l'orage pour les prendre à l'essai. Des avantages aux inconvénients, des poids plumes aux enclumes, du chat de Schrödinger à la dichotomie du bien et du mal, tout y est passé.

Et comme le titre de l'article le précise explicitement, c'est sur Leed que mon choix s'est finalement arrêté. Néanmoins, au fil des mois, une dure réalité s'est imposée. L'ergonomie de cet outil quotidien ne me convenait pas. Après avoir partagé une si franche tranche de branche aux cotés de l'ami Idleman, il prétendra ne même pas me connaître. Ah ! L'ingratitude...

...mais ça, c'était avant !

Son successeur ne payait pas de mine. Doté de certaines prédispositions aux bogues et souffrant d'un cruel manque de fonctionnalités, FreshRSS avait tout pour plaire. Pour couronner la cerise qui fait déborder le vase, Marien Fressinaud — l'auteur du programme — a su trouver les mots justes pour motiver le curieux et faire appel à une vive participation de la communauté :

Cette application a été développée pour s'adapter à mes besoins personnels.
Je ne garantis en aucun cas la sécurité de celle-ci, ni son bon fonctionnement sur un autre serveur que le mien.

Marien Fressinaud

Face à tant de chaleur, je ne pouvais qu'être séduit.

Logo de FreshRSS
Logo de FreshRSS

Actuellement en version 0.5.1, le développement de la 0.6 — et même de la 1.0 — bat son plein. Marien peut désormais compter sur quelques fidèles contributeurs. Je vous conseille d'ailleurs de tester la version de développement, qui corrige quelques bogues persistants de la 0.5.1.

Les pré-requis et l'installation étant très standards, je ne les détaillerais pas. Il suffit en effet de télécharger l'archive du programme, la décompresser sur un espace web et joindre l'URL correspondante dans un navigateur pour poursuivre la procédure. Vous trouverez toutes les infos nécessaires sur la page Github du projet ou sur le site de l'auteur.

À noter qu'il est obligatoire de disposer d'une base de donnée MySQL. Néanmoins, le choix d'une base SQLite devrait bientôt être proposé.

Informations techniques

Nom du programme : FreshRSS
Version utilisée : 0.5.1
Licence : AGPL v3
Auteur : Marien Fressinaud
Localisation : France
Site web du programme : http://marienfressinaud.github.io/FreshRSS
Site web de l'auteur : www.marienfressinaud.fr

Une instance de démonstration était disponible il y a peu, mais ne semble plus fonctionner : www.marienfressinaud.fr/projets/freshrss

L'interface est responsive design et s'adapte très bien aux smartphones. De plus, des thèmes graphiques personnalisés peuvent facilement être ajoutés. Les flux peuvent être triés par catégories, favorisés, importés/exportés au format OPML... Par ailleurs, FreshRSS laisse le choix d'une instance publique ou privée. La connexion à l'instance privée s'effectue via Mozilla Persona. Les raccourcis claviers peuvent être personnalisés, ainsi que plein d'autres options super cool (chargement automatique des articles en bas de page, chargement des images en mode lazy load...). À noter encore la gestion individuelle des flux, les différents modes de lecture, la barre de recherche, etc. qui font de FreshRSS un outil complètement dingue ! (Un lecteur de flux, quoi).

J'utilise FreshRSS depuis plusieurs mois et je n'ai que peu de choses à lui reprocher (juste peut-être ceci et cela). Et puis, je trouve le logo particulièrement réussi. Wink

Je vous laisse vous faire votre propre idée. À vos serveurs !

Captures d'écran

Interface générale
Interface générale
Lecture d'un article
Lecture d'un article
Gestion des flux
Gestion des flux
Gestion individuelle des flux
Gestion individuelle des flux
Configuration de la lecture
Configuration de la lecture

Gravatar de Cyprien Pouzenc
Original post of Cyprien Pouzenc.Votez pour ce billet sur Planet Libre.

Articles similaires

Jonathan Le Lous : Formation et logiciel libre / open source : bilan de l'étude Opiiec 2013

lundi 28 octobre 2013 à 18:33

Bonjour,

Cette année, j'ai participé en tant qu'expert au nom d'alter Way via le Syntec Numérique au sein du comité open source et du groupe de travail compétences et formation (je sais c'est long) au pilotage d'une étude sur les besoins en formation en matière de logiciel libre. Cette étude a été pilotée par l'Opiiec (Observatoire Paritaire des Métiers de l’Informatique, de l’Ingénierie, des Études et du Conseil). Cette étude est riche et l'on peut en sortir une mine d'informations, je vous invite à lire l'étude par vous-même.

Formation open source

A l'initiative du groupe de travail, nous avons proposé de mener cette étude dont les objectifs étaient:

  1. Disposer d'une étude « neutre »
  2. Inciter l'appuie à la formation open source (action collective et CQP)

L'étude a été réalisée, par le cabinet IDC, durant le premier semestre 2013 et publiée en Juillet 2013 sur le site du Fafiec: Etude Opiiec ici. Elle visait à comparer la demande (entreprises) et l'offre de formation (enseignement supérieur) en matière de technologies libres par domaines. Les organisations interrogées (250) représentent un effectif total de 190 606 salariés, dont 167 022 pour les entreprises utilisatrices. 44% de l'échantillon sont des entreprises de 200 à 500 salariés; 28% de 500 et plus; 10% de 100 à 200 et le reste (16%) de moins de 50 personnes.

Méthodologie de l'étude

Méthodologie

Les usages du logiciel libre en France par les utilisateurs

Usages logiciels libres

Globalement, 78% des utilisateurs et 82% des fournisseurs utilisent des logiciels libres. Près de la moitié des entreprises interrogées pensent que l'usage du logiciel libre va augmenter (45%) dans les années à venir (alors que 50% pensent que cela va se stabiliser).

La formation actuelle

Auto-formation

L'auto-formation est donc la modalité de formation de référence aujourd'hui en France en matière de logiciel libre !

Compétences collaborateurs Adoption open source

Principaux domaines technologiques

Les principaux domaines technologiques dans lesquels existent des attentes de formations sont respectivement:

Au-delà de ces compétences technologiques, d’autres compétences sont également attendues de la part des entreprises afin de favoriser une meilleure maîtrise des environnements Open Source et en particulier :

  1. Des compétences approfondies sur les projets d’intégration et les projets complexes,
  2. Une meilleure maîtrise de la gestion des licences et de l’impact de celles-ci dans le choix et l’usage des technologies,
  3. Des savoir-faire plus poussés quant à la capacité à contribuer en interne, en externe ainsi que sur les modalités de travail avec les communautés.

Enseignement supérieur et logiciel libre: les attentes

enseignement supérieur open source

89% des entreprises interrogées pensent qu'il est important voir très important d'enseigner le logiciel libre dans les écoles d'ingénieur et les universités.

Enseignement supérieur et logiciel libre: satisfaction actuelle

Satisfaction formation supérieure

58% des entreprises interrogées pensent les nouveaux collaborateurs (jeunes diplômés) n'ont pas bénéficié de formation satisfaisante en matière de technologies Open Source.

L'enseignement aujourd'hui - l'offre

Si aujourd’hui on constate un manque de formation spécialisée en matière de logiciel libre, l'enseignement des différentes technologies libres prend de plus en plus d’importance dans les filières générales. Ainsi selon l’étude, la totalité des étudiants dans les établissements supérieurs enseignants l’informatique est confrontée aux technologies Open Source. Plus précisément :

L’ensemble des établissements interrogés dans le cadre de l’étude s’accordent quant à la progression continue de l’Open Source depuis plusieurs années. A ce titre, elles estiment :

A noter qu’au delà de cette dynamique, des universités ont décidé de s’investir davantage dans le logiciel libre en proposant des formations dédiées : université et logiciel libre

Vous trouverez une cartographie avec plus de référence sur le site du Think tank Education, job and Floss.

L'étude conclue par 7 préconisations

  1. Développer un module de formation à destination des entreprises sur les stratégies d’innovation et le développement de nouveaux usages via le logiciel libre.
  2. Développer des modules de formation et de perfectionnement à destination des acteurs du secteur IT sur les technologies associées aux segments en forte croissance (e-commerce, mobilité, datacenter, Cloud Computing, Big Data …) : Linux, Apache, Java, Tomcat, NoSQL, Hadoop, Cloud OpenStack …
  3. Mettre en place un groupe de réflexion sur une stratégie de certification des compétences autour de technologies clés de l’Open Source
  4. Développer un module de formation / perfectionnement à destination des fournisseurs du secteur IT sur les méthodes spécifiques aux problématiques d’intégration.
  5. Identifier les communautés Open Source les plus actives et inciter les étudiants à travailler au sein de ces communautés, en étant accompagnés par des professionnels.
  6. Développer des modules de formation et proposer des mécanismes de reconversion aux informaticiens spécialisés sur des technologies obsolètes à destination des fournisseurs IT vers des segments de volume (infrastructures, développement web…).
  7. Renforcer les programmes de communication existants et développer de nouvelles approches permettant d’attirer les étudiants vers des formations techniques.

+++ Jonathan

Gravatar de Jonathan Le Lous
Original post of Jonathan Le Lous.Votez pour ce billet sur Planet Libre.

Littlewing : Premiers pas avec SOLR

lundi 28 octobre 2013 à 15:23

Après avoir pas mal touché à Apache Lucene il y a quelques années ce ça ( je vous par le d'un temps que les moins de vingt ans ne peuvent pas connaître...), j'ai décidé de me pencher sur les moteurs de recherche opensource. J'ai donc décidé de me pencher sur SOLR et ElasticSearch. Ces deux projets sont basés sur lucene.

Le cas d'utilisation que je souhaite mettre en œuvre est assez simple pour l'instant : indexer le résultat d'une requête faite dans un SGBD. Celle ci prend énormément de temps ( environ 30 secondes ) et je souhaite avoir un résultat immédiat le tout en REST.

Le cas elasticsearch

J'ai tout d'abord essayé elasticsearch. Ce dernier est le projet qui a le vent en poupe et présente de nombreux sous-projets très intéressants ( logstash, kibana). Le seul moyen d'extraire les données d'un SGBD est le jdbc-river. Ce moyen ne m'a pas trop séduit , il y a pas mal de problèmes liés à la saisie d'une requête complexe. Aussi j'en ai discuté brièvement avec David Pilato ( qui a fait une super présentation sur Kibana) lors du JugSummerCamp . Il m'a confirmé l'extension du scope du projet logstash aux autres sources de données (ex. JDBC). Cette mutation devrait être effective mi 2014. Bref, en attendant j'ai exploré SOLR.

Présentation de SOLR

SOLR est donc un moteur de recherche ( ça vous l'aviez deviné) qui s'appuie sur Apache Lucene ( ça aussi ...) . Il présente des fonctionnalités semblables à ElasticSearch. A ce que j'ai pu lire sur le net ici ou , ce dernier est supérieur sur la gestion des recherches distribuées. Je n'aurais pas besoin de cette fonctionnalité dans un premier temps. Les fonctionnalités qui m'intéressent sont les suivantes :

Configuration

Pour mon projet, je me suis basé sur un archetype maven disponible sur le net. Ce dernier crée un exemple de projet qui lance un jetty avec le war de solr

Vous devez également disposer de la distribution de SOLR pour que le livrable soit déployé. C'est la seule solution que j'ai trouvé pour l'instant. Ce n'est pas très élégant, car je préférerai avoir le tout embarqué dans la webapp.

Mon projet s'appelle customer-indexer . Il indexe les données d'une base de clients. Dans le répertoire src/main/resources, j'ai crée un répertoire customers. J'ai copié le contenu du répertoire collection1 présent dans les exemples de la distribution.

J'exposerai ici la configuration indispensable pour mon cas d'étude

le fichier solr.xml

  1. version="1.0" encoding="UTF-8" ?>
  2. persistent="true">
  3. adminPath="/admin/cores" defaultCoreName="refper" host="${host:}" hostPort="${jetty.port:}" hostContext="${hostContext:}" zkClientTimeout="${zkClientTimeout:15000}">
  4. name="customers" instanceDir="." />
  5. >
  6. >

Dans le répertoire src/main/resources/customers/conf, il faut ajouter a minima les fichiers solrconfig.xml schema.xml et data-config.xml.

solrconfig.xml

Les deux premiers sont déjà présents J'ai modifié le premier avec les informations suivantes :

j'ai mis le chemin en dur de la distribution et non le relatif

  1. dir="c:/java/solr-4.5.0/contrib/extraction/lib" regex=".*\\.jar" />
  2. dir="c:/java/solr-4.5.0/dist/" regex="solr-cell-\\d.*\\.jar" />
  3.  
  4. dir="c:/java/solr-4.5.0/contrib/clustering/lib/" regex=".*\\.jar" />
  5. dir="c:/java/solr-4.5.0/dist/" regex="solr-clustering-\\d.*\\.jar" />
  6. dir="c:/java/solr-4.5.0/dist/" regex="solr-dataimporthandler-\\d.*\\.jar" />
  7.  
  8. dir="c:/java/solr-4.5.0/contrib/langid/lib/" regex=".*\\.jar" />
  9. dir="c:/java/solr-4.5.0/dist/" regex="solr-langid-\\d.*\\.jar" />
  10.  
  11. dir="c:/java/solr-4.5.0/contrib/velocity/lib" regex=".*\\.jar" />
  12. dir="c:/java/solr-4.5.0/dist/" regex="solr-velocity-\\d.*\\.jar" />

La configuration de l'élément elevator semblait erronée

  1. name="elevator" class="solr.QueryElevationComponent" >
  2. name="queryFieldType">string>
  3. name="config-file">elevate.xml>
  4. >

J'ai rajouté également le module d'import des données

  1. name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">
  2. name="defaults">
  3. name="config">data-config.xml>
  4. >
  5. >

schema.xml

Ce fichier décrit la structure des documents présents dans l'index du moteur de recherche. On définit les données à indexer, les types de données et les filtres à appliquer (exemple: tout passer en minuscule)

  1. name="customers" version="1.5">
  2. >
  3.  
  4. name="idpp" type="string" indexed="true" stored="true" required="true" multiValued="false"/>
  5.  
  6. name="_root_" type="string" indexed="true" stored="false"/>
  7.  
  8.  
  9. name="dtcrea" type="date" indexed="true" stored="true" omitNorms="true"/>
  10. name="dtlastupd" type="date" indexed="true" stored="true"/>
  11. name="title" type="lowercase" indexed="true" stored="true" omitNorms="true"/>
  12. name="lastname" type="lowercase" indexed="true" stored="true" multiValued="true"/>
  13. name="fstname" type="lowercase" indexed="true" stored="true" multiValued="true"/>
  14. name="dtbirth" type="date" indexed="true" stored="true" termVectors="true" termPositions="true"
  15. termOffsets="true"/>
  16. name="status" type="float" indexed="true" stored="true"/>
  17. name="content" type="text_general" indexed="false" stored="true" multiValued="true"/>
  18.  
  19. name="text" type="text_general" indexed="true" stored="false" multiValued="true"/>
  20.  
  21. name="text_rev" type="text_general_rev" indexed="true" stored="false" multiValued="true"/>
  22. name="_version_" type="long" indexed="true" stored="true"/>
  23.  
  24.  
  25. >
  26. >idpp>
  27.  
  28. source="title" dest="text"/>
  29. source="lastname" dest="text"/>
  30. source="firstname" dest="text"/>
  31. source="birthday" dest="text"/>
  32. >

data-config.xml

Dans ce fichier on spécifie les données récupérées de la base de données

  1. >
  2. driver="oracle.jdbc.OracleDriver" url="urljdbc" user="user" password="pwd"/>
  3. name="customer">
  4. name="customer" query="Marequete">
  5. column="id" name="id" />
  6. column="LASTNAME" name="lastname" />
  7. column="FIRSTNAME" name="firstname" />
  8. column="DTCREATION" name="dtcreation" />
  9. column="DTLASTUPDATE" name="dtlastupdate" />
  10. column="BIRTHDAY" name="birthday" />
  11. column="STATUS" name="status" />
  12. >
  13. >
  14. >

Configuration maven

voici le contenu du pom.xml

  1. version="1.0" encoding="UTF-8"?>
  2. xmlns="http://maven.apache.org/POM/4.0.0"
  3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  5. >4.0.0>
  6.  
  7. >customer-indexer>
  8. >customer-indexer>
  9. >1.0-SNAPSHOT>
  10. >war>
  11.  
  12. >
  13. >UTF-8>
  14. >1.7.5>
  15. >1.2.17>
  16. >4.5.0>
  17. >customers>
  18. >customers>
  19. >c:/java/solr-4.5.0/>
  20. >
  21.  
  22. >
  23. >
  24. >org.slf4j>
  25. >slf4j-api>
  26. >${slf4j-api.version}>
  27. >
  28. >
  29. >org.slf4j>
  30. >jcl-over-slf4j>
  31. >${slf4j-api.version}>
  32. >
  33. >
  34. >org.slf4j>
  35. >jul-to-slf4j>
  36. >${slf4j-api.version}>
  37. >
  38. >
  39. >org.slf4j>
  40. >slf4j-log4j12>
  41. >${slf4j-api.version}>
  42. >
  43. >
  44. >log4j>
  45. >log4j>
  46. >${log4j.version}>
  47. >
  48.  
  49. >
  50. >com.oracle.ojdbc>
  51. >ojdbc>
  52. >10.2.0.2.0>
  53.  
  54. >
  55. >
  56. >org.apache.solr>
  57. >solr>
  58. >${solr.version}>
  59. >war>
  60. >
  61. >
  62.  
  63. >
  64. >customers>
  65. >
  66. >
  67. >true>
  68. >src/main/resources>
  69. >
  70. >
  71. >
  72. >
  73. >maven-antrun-plugin>
  74. >1.7>
  75. >
  76. >
  77. >copy-to-solr>
  78. >
  79. >run>
  80. >
  81. >package>
  82. >
  83. >
  84. todir="${solr.solr.home}" includeemptydirs="true" overwrite="true">
  85. dir="${project.build.outputDirectory}">
  86. >
  87. >
  88. >
  89. >
  90. >
  91. >
  92. >
  93. >
  94. >org.eclipse.jetty>
  95. >jetty-maven-plugin>
  96. >9.0.4.v20130625>
  97. >
  98. >9966>
  99. >stop>
  100. >
  101. >/refper>
  102. >
  103. >
  104. >
  105. >
  106. >
  107. >

Démarrage

Dans mon cas il me suffit de lancer la commande

  1. mvn clean install jetty:run

Import des données

On peut le faire soit par un appel REST, soit par la console : Sélectionner la collection puis cliquer sur Data Import

backup_sonar034.png

Conclusion

Pour l'instant j'ai rapidement fait une première indexation de mes données. je suis conscient qu'il y a pas mal d'améliorations à apporter, notamment sur la modélisation de mon index avec les bonnes entités (ex. une entité customer, une entité address,...)

Je verrai le requêtage dans un autre post.

Gravatar de Littlewing
Original post of Littlewing.Votez pour ce billet sur Planet Libre.

Admin-Linux : Shell : Historiser (logguer) toutes les commandes shell

lundi 28 octobre 2013 à 14:16

loggue commande shell Shell : Historiser (logguer) toutes les commandes shell

Voici une astuce permettant d’historiser toutes les commandes tapées dans un shell.

Cet méthode est inspiré d’un article que j’ai vu sur Linux Attitude, j’ai juste rajouté le fait de rediriger ces logs dans un fichier à part avec la mise en place d’un logrotate.

Ajouter dans /etc/profile :

# envoyer la commande dans syslog pour chaque commande AVANT exécution
trap 'logger -i -p local5.info -t bash "$USER $(tty): $(fc -ln -1)"' DEBUG
OU
# envoyer la commande dans syslog pour chaque commande APRES exécution
PROMPT_COMMAND='logger -i -p local5.info -t bash "$USER $(tty): $(history 1)"'
# fc ne marche pas correctement dans PROMPT_COMMAND

Rediriger les logs dans un fichier à part, pour cela créer le fichier :

vi /etc/rsyslog.d/shell.conf

Et ajouter :

local5.*                                     -/var/log/shell.log

Le tiret (-) devant le fichier de log permet une écriture asynchrone (pas forcément nécessaire, car ça ne risque pas d’impacter les perf, mais bon…)

Créer un fichier logrotate

/etc/logrotate.d/shell
/var/log/shell.log {
rotate 30
daily
missingok
notifempty
delaycompress
compress
postrotate
invoke-rc.d rsyslog rotate > /dev/null
endscript
create 640 root adm
}

Une fois que tout est prêt, il suffit de relancer rsyslog :

/etc/init.d/rsyslog restart

Gravatar de Admin-Linux
Original post of Admin-Linux.Votez pour ce billet sur Planet Libre.