PROJET AUTOBLOG


Planet-Libre

source: Planet-Libre

⇐ retour index

Génération Linux : Synchronisation d'une todo list android vers mon serveur perso

mardi 5 janvier 2016 à 06:27

J'ai toujours eu une mémoire très (très) sélective, je n'arrive jamais à me rappeler de quelque chose (sauf si c'est pas important). Je fais bien plus confiance à mon disque dur pour ça. Du coup, depuis longtemps, j'ai un "outil" de prise de notes/rappel sur mon serveur. Ces notes étaient jusque là accessibles uniquement depuis une interface web. Je souhaitais les avoir également sur mon téléphone Android (en sachant que mon téléphone n'a pas de forfait data, je devais donc trouver une solution qui soit disponible hors ligne et qui se synchronise périodiquement (quand je suis en wifi). J'ai eu un peu de mal à trouver mon bonheur, mais maintenant que c'est fait, je vais partager ça avec vous, on ne sait jamais, peut-être que certains d'entre vous sont aussi dans mon cas.

todo.png

Keske j'ai

Depuis des années, j'utilise une page d'accueil perso en HTML (j'en avais parlé dans ce retour d'expérience il y a 3 ans). J'ai pas mal modifié cette page d'accueil depuis tout ce temps. J'utilise désormais le thème d'admin bootstrap SB Admin 2 (au passage, ce truc est une tuerie, mais j'en reparlerai peut-être dans un autre article). J'ai également ajouté à cette page un petit formulaire texte qui me permet (à moi et ma chérie) de prendre/laisser des notes :

accueil.png

J'adore ce système car il est très simple (c'est juste du texte enregistré dans un fichier todo.txt) et je vois tout le temps mes notes (cette page étant ma page d'accueil et me servant de rebond pour tous mes liens, j'y passe systématiquement plusieurs fois par jour).

Keske je veux

Je me suis acheté, il y a peu, un nouveau téléphone Android (HTC One) avec un super grand écran. Je souhaitais avoir cette ToDo list en widget sur une partie de mon écran de téléphone. Je souhaitais aussi pouvoir modifier cette liste soit depuis le téléphone, soit depuis le web et que tout soit synchronisé.

Problème : je n'ai pas de forfait data avec mon smartphone :)

Keske je ne veux pas

J'ai donc commencé à chercher des solutions de ToDo list sur Android. J'en ai trouvé par mal, des gratuites, des payantes, des avec widgets possibles sur le bureau, des super jolies, etc. Le truc, c'est que je ne voulais pas stocker mes notes un serveur qui ne m'appartient pas (c'est le cas de la plupart des services de prise de notes sur Android), je voulais un système qui se synchronise sur mon serveur quand je suis en wifi et je voulais conserver mon système de simple formulaire texte sur ma page d'accueil HTML. Je ne voulais donc pas de système requérant une base de données.

Ça commence à faire beaucoup de contraintes...

Keske j'ai choisi

Au fil de mes recherches, je suis tombé sur un super projet qui s'appelle Todo.txt. Ce projet vise à normaliser une syntaxe d'écriture dans un fichier texte et à fournir des outils autour pour transformer un simple fichier todo.txt en une liste exploitable, triable, filtrable, etc.

todotxt-apps_lrg.png

Parmi ces outils, il y a une application android "officielle" Todo.txt : "Une application simple et sympa de gestion de tâches qui synchronise votre fichier todo.txt via Dropbox". Cette appli est plutôt sympa car elle "transforme" notre fichier formaté "todo.txt" en une vraie liste où on peut ajouter/modifier/supprimer des éléments.

Problème : pour utiliser cette application, il faut avoir un compte Drpobox (pour y synchroniser son fichier todo.txt), chose que je ne souhaite pas avoir.

En continuant mes recherches dans cette voie (ce système de syntaxe de todo.txt m'intéressait vraiment), j'ai vu qu'il y avait une autre application android qui utilise un fichier todo.txt (avec cette même syntaxe) et qui se base sur un fichier todo.txt sur le téléphone, sans aucune synchronisation : Simpletask Cloudless.

À ce stade, j'ai donc une appli android qui m'affiche (sur le téléphone - en widget) une ToDo liste et qui stocke ça dans un fichier texte :

andro1.png andro2.png

Il ne restait plus qu'à faire en sorte que ce fichier todo.txt soit synchronisé avec mon fichier todo.txt utilisé sur ma page d'accueil HTML. Pour faire ça, j'ai utilisé une application super pratique : FolderSync Lite. Cette application me permet de synchroniser (de manière périodique et bidirectionnelle) un fichier/répertoire présent sur mon téléphone vers un compte Dropbox, Google Drive, Amazon, etc. mais aussi vers mon serveur via les protocoles SSH, FTP, webdav, etc.

Au début, je faisais du SFTP mais ça m'a causé quelques soucis de droits, du coup, je me suis rabattu du webdav. La mise en place d'un espace webdav est très simple avec un serveur apache, après l'activation du module qui va bien et 4 lignes de configuration, c'est accessible sur HTTPS et authentifié, tout ce qui va bien. Voici le paramétrage du dossier à synchroniser et du serveur webdav dans FolderSync :

andro3.pngandro4.png

Voila, j'ai désormais une synchronisation bidirectionnelle toutes les heures (qui échoue si je n'ai pas de connexion data/wifi). Les tests sont concluants, je suis vraiment ravi de cette solution (que j'ai eu bien du mal à trouver). Si vous avez des questions, n'hésitez pas !

Et vous, utilisez-vous un système de prise de notes ? Si oui, lequel ?

Gravatar de Génération Linux
Original post of Génération Linux.Votez pour ce billet sur Planet Libre.

Carl Chenet : Récapitulatif 2015

mardi 5 janvier 2016 à 00:00

Cette année a sans nul doute été une de mes grandes années de contributions au Logiciel Libre. Afin de me remémorer le chemin parcouru, je vais prendre les sujets dans l’ordre.

1. Le Journal du hacker

J’en parle très souvent sur ce blog, je suis le fondateur du Journal du hacker, un site communautaire participatif à la Hacker News, principal site américain du genre. Sauf que contrairement à Hacker News, nous utilisons un logiciel libre.

Rejoint depuis par une équipe des plus dynamiques, nous avons cette année :

  1. changé de nom (de Journal du pirate vers Journal du hacker)
  2. mis en place le nouveau nom de domaine (de infos.mytux.fr vers http://www.journalduhacker.net)
  3. développé les comptes Twitter et Diaspora* du Journal du hacker
  4. fait connaître le projet aussi largement que possible
  5. développé des outils pour nos besoins (j’en reparle plus bas)
  6. et surtout surtout nourri le site au quotidien, merci à toute l’équipe pour ça !

logo-journal-du-hacker

2. LinuxJobs.fr

Un projet me trottait dans la tête depuis longtemps : réaliser un site d’emploi spécialisé dans la communauté francophone du Logiciel Libre et de l’opensource. 2015 est l’année qui allait me voir lancer le projet. Tout a bien commencé par une communication réussie sur LinuxFR. Le projet a eu plusieurs phases et m’a emmené dans une direction bien différente que celle où je pensais aller les premiers temps. Plusieurs étapes se sont succédés :

  1. analyse de l’offre existante
  2. le choix d’une solution, bien évidemment un logiciel libre
  3. travailler avec le développeur amont pour améliorer/corriger son programme
  4. travailler main dans la main avec la communauté FOSS pour fournir un outil qui l’intéresse
  5. créer les comptes Twitter et Diaspora* de LinuxJobs.fr et les alimenter
  6. développer des outils pour automatiser la plupart des tâches
  7. communiquer de façon transparente, par exemple grâce au nouveau blog de LinuxJobs.fr
  8. faire grandir la communauté des utilisateurs

Le résultat de ce travail est loin d’être achevé mais il me semble en bonne voie. La nouvelle version de LinuxJobs.fr rendue publique ce lundi 4 janvier 2016 avec le support des flux RSS pour les catégories et les villes va permettre de faire gagner les utilisateurs en indépendance et d’automatiser la communication des nouvelles offres publiées encore davantage.linuxjobs-horizontale

2. Twitter Out Of The Browser

Afin de faire connaître sur Twitter le Journal du hacker, puis plus récemment mon nouveau projet LinuxJobs.fr, j’ai dû développer différents outils autour de Twitter. Pour commencer, face à l’isolement et la difficulté à faire connaître aujourd’hui un nouveau projet via Twitter, j’ai codé rapidement un outil faisant une chose et la faisant bien : Retweet.

2.1 Retweet

Retweet est un logiciel développé sur Github (étoiles appréciées :) ) en Python 3.4 et sous licence GPLv3 a permis de retweeter les nouvelles postées sur le Journal du hacker vers mon compte personnel Twitter @carl_chenet . L’opération faisait d’une pierre deux coups : fournir des nouvelles en relation avec les sujets sur lesquels je tweete d’habitude à un public intéressé et nombreux. Et en retour leur faire connaître le Journal du hacker. Aujourd’hui nous avons dépassé les 800 membres du compte Twitter du Journal du hacker !

Le logiciel s’est enrichi de nouvelles fonctionnalités afin de répondre à différentes contraintes améliorant l’efficacité des retweets et je suis très content du chemin parcouru.

2.2 db2twitter

Le logiciel propulsant LinuxJobs.fr ne proposait pas au départ de flux RSS. J’ai donc dû me creuser la tête pour être capable d’extraire les offres d’emploi de la base de données et les poster automatiquement sur le compte Twitter de LinuxJobs.fr où la communauté d’abonnés allait croissante.

Quand vous travaillez seul sur un projet au départ, chaque tâche automatisée est une tâche dont on peut dédier le temps qu’on passait à la réaliser à faire autre chose.

J’avais donc besoin d’un logiciel qui allait chercher des informations dans une base de données, formait un tweet avec ses informations et postait le tweet en question sur Twitter. Rapidement je codais la réponse à ce problème : db2twitter, qui fit son apparition sur Github (étoiles appréciées :) ). Comme Retweet il est codé en Python 3.4 et sous licence GPLv3. Je poussais mon travail sur ce logiciel bien plus loin que ce que j’imaginais au départ, en le rendant assez flexible pour un usage général, adaptable à de nombreuses bases de données grâce à SQLAlchemy et en le documentant correctement.

Aujourd’hui db2twitter continue de parfaitement remplir son office pour LinuxJobs.fr et s’enrichit à chaque version de nouvelles fonctionnalités.

2.3 Feed2tweet

Depuis quasiment le premier jour, le Journal du hacker utilisait un programme permettant de transformer le flux RSS des nouveautés vers le compte Twitter du Journal du hacker.

L’équipe m’avait remonté des limitations du logiciel, en particulier sur le traitement des mots-dièse (hashtags). J’avais étudié le projet mais ce dernier semblait arrêté depuis 2013. Face à cette impossibilité de faire évoluer le logiciel avec son développeur amont originel, j’ai pris la décision de bifurquer du projet originel vers un nouveau projet : Feed2tweet

Feed2tweet, codé en Python 2 et sous licence GPLv3, encore sur Github (étoiles appréciées :) ), vise à être le contraire de ce qu’était son code originel : un bout de code sans documentation et inmaintenable. La première version a apporté des corrections importantes sur le traitement des mots-dièse et l’amélioration du fichier de configuration.

Après la version 0.1, j’ai immédiatement reçu plusieurs contributions. Le besoin d’améliorer ce logiciel était vraisemblablement là depuis longtemps. Nous travaillons en ce moment avec plusieurs développeurs afin de sortir une prochaine version offrant de nombreuses améliorations.

2.4 Twitterwatch

Lorsque vous automatisez une chaîne de traitement, il est de la plus grande importance de savoir quand cette chaîne est rompue. Car typiquement sans surveillance humaine, vous pouvez mettre littéralement des heures à vous en apercevoir. Suite à un incident de ce type où j’ai constaté que la chaîne de traitement était rompue depuis plus de 12 heures, j’ai pris la décision d’écrire un programme vérifiant l’âge du dernier tweet posté sur le compte du Journal du hacker et déclenchant une alerte le cas si besoin.

Twitterwatch était né. Codé en Python 3.4 sous licence GPLv3 et présent sur Github (étoiles appréciées :) ), il est encore un peu jeune et se limite à l’essentiel mais remplit déjà parfaitement son office en spammant ma boîte e-mail quand le dernier des tweets sur le compte Twitter du Journal du hacker est qualifié comme trop vieux. Ce qui indique donc un problème dans la chaîne de traitement.

3. Contributions au projet Debian

Étant développeur Debian, il était hors de question de laisser des programmes si intéressants hors de Debian ;p

C’est pourquoi j’ai inclus cette année Retweet et db2twitter dans les dépôts officiels Debian. J’ai essayé de mettre à jour les paquets régulièrement, même si j’ai pris un peu de retard en cette fin d’année. Une bonne résolution à prendre de plus pour 2015 :) Feed2tweet et Twitterwatch sont des projets encore très récents, mais les paquets Debian ne vont pas tarder à arriver.

Mes autres contributions pour Debian ont principalement consisté en des rapports de bugs afin de remonter des problèmes aux différents mainteneurs des paquets concernés qui sont tracés dans mes différents billets sur le sujet :

Je suis plutôt sur une bonne pente pour la publication de mes billets qui parlent de mes contributions au Libre et j’espère que je vais réussir à continuer dans cette voie.

4. Articles pour GNU/Linux Magazine France

Cela faisait bien longtemps (plusieurs années en fait) que je ne trouvais plus le temps d’écrire pour GNU/Linux Magazine France mais plusieurs opérations intéressantes effectuées pour des clients de mon activité d’infogérance MyTux m’ont donné l’occasion d’écrire quelques articles intéressants pour GLMF. J’aimerais poursuivre en 2016.

5. En conclusion

Un très long billet donc qui détaillait une année bien chargée en contribution à la communauté du Logiciel Libre et de l’opensource. J’espère avoir écrit des outils qui seront utiles à d’autres que moi et surtout que ces personnes se manifesteront pour créer une dynamique positive à chacune des projets en question. Le Libre c’est bien, mais à deux ou plus, c’est encore mieux.

Je reste donc à l’affût de tous les retours que l’on me fait sur mes différents projets. Toute critique est bonne à prendre tant qu’elle est constructive, et rien n’est aussi constructif qu’une bonne Push Request ;) Que ce soit dit pour 2016 !

 

 


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

Journal du hacker : Entretien avec Raphaël Hertzog

mardi 5 janvier 2016 à 00:00

Jdh : Bonjour Raphaël et merci de participer à cet entretien pour le Journal du hacker. Pour nos lecteurs qui ne te connaissent pas, peux-tu te présenter rapidement ?

Raphaël : Je m'appelle Raphaël Hertzog, j'ai 36 ans, je suis marié et j'ai deux garçons (de 2 et 5 ans). Je vis près de Saint-Étienne (à Sorbiers) et j'y travaille aussi puisque je gère ma société (Freexian SARL) depuis chez moi et que l'ensemble de mes missions s'effectuent en télé-travail. Comme je suis très sédentaire, je pratique le badminton à un bon niveau pour entretenir ma forme physique.

Je suis développeur Debian depuis 1997 (ça fait 18 ans, soit la moitié de ma vie !) et j'ai déjà touché à plein de choses au sein du projet... des paquets importants (comme debian-cd, developers-reference, dpkg, python-django), l'administration de certains services (alioth.debian.org), la présidence de Debian France, l'organisation de Debian LTS, …

Mais ce qui m'attire le plus c'est de travailler sur l'infrastructure qui permet à tous les contributeurs d'être plus efficace et de faire un travail de meilleure qualité. Historiquement c'est l'équipe d'Assurance Qualité qui a cristallisé ce genre de projets et c'est au sein de cette équipe que j'ai créé le Package Tracking System et que je maintiens maintenant son successeur, le Debian Package Tracker (une réécriture en Django initiée lors d'un Google Summer of Code).

Accessoirement, je suis également l'auteur du Cahier de l'Admin Debian qui a donné naissance au Debian Administrator's Handbook (Roland Mas est devenu co-auteur avec moi au fil des éditions).

Jdh : C'est en effet l'infrastructure Debian qui assure à tous les contributeurs de ce projet de bonnes bases pour contribuer. Peux-tu nous donner quelques informations sur les efforts entrepris récemment dans ce domaine, les nouveautés déjà disponibles et peut-être celles à venir ?

Raphaël : Ben justement je n'ai pas l'impression qu'on ait fait beaucoup de progrès récemment sur ces thématiques. On peut tout de même citer sources.debian.net qui permet de naviguer facilement dans les sources des paquets Debian, de fournir un lien vers une ligne précise de code, ou vers un patch que Debian applique. Associée à l'extension Firefox/Chromium de Raphaël Geissert, on peut facilement créer un patch sur n'importe quel logiciel empaqueté dans Debian.

Il y a aussi le Debian Maintainer Dashboard qui a été mis en place en s'appuyant sur UDD (Ultimate Debian Database). Mais il fait doublon avec le DDPO (Debian Developer's Package Overview).

Enfin, je citerai volontiers dgit, car l'idée d'avoir une infrastructure centralisée permettant de gérer des paquets Debian simplement avec git est plutôt plaisante. Mais j'ai peur que le projet ne soit voué à l'échec car le projet souffre de limitations importantes : aucun historique n'est disponible sur les paquets, même lorsque le mainteneur utilise déjà git avec le paquet.

En ce qui concerne le futur et n'étant pas devin, je peux simplement donner quelques projets que j'aimerai voir aboutir et sur lesquels je vais sûrement essayer de travailler :

Jdh : Tu es au centre de l'initiative Debian LTS, qui fournit un support de longue durée aux différentes versions stables de Debian. Peux-tu nous en dire un peu plus, sur par exemple l'origine du projet, les moyens mis en œuvre, les avancées du projet et ses objectifs ?

Raphaël : Moi j'ai suivi cela de très près et lorsque le projet a été lancé et que quelques propositions d'aides financières ont été émises j'ai immédiatement proposé aux autres contributeurs intéressés par être payés pour travailler sur Squeeze LTS de s'unir derrière une offre unique que l'on pourrait mettre en avant.

C'est ainsi qu'est née l'offre Debian LTS de Freexian. Et à ce jour l'essentiel des contributions à Debian LTS proviennent de contributeurs financés par les sponsors gérés par Freexian. J'ai fait quelques statistiques à ce sujet que j'ai présenté lors de la DebConf (diapos, vidéo).

Personnellement j'estime que c'est un succès, mais un succès modeste tout de même, il nous a fallu plus d'un an pour arriver à financer l'équivalent d'un mi-temps. Quand on sait les moyens financiers des grosses entreprises, on se dit qu'on peut faire bien mieux. Et j'espère effectivement qu'on va réussir à convaincre d'autres entreprises pour pérenniser le projet et se donner des marges de manœuvre que l'on n'a pas encore.

D'ici quelques mois nous allons passer à Debian 7 Wheezy LTS parce que Debian 6 arrivera au terme des 5 ans de support et nous allons essayer d'avoir moins de restrictions en terme de paquets supportés (notamment sur les technologies de virtualisation)... mais il faudra des moyens supplémentaires si l'on ne veut pas que d'autres paquets en pâtissent à terme.

L'objectif de Debian LTS est simple : supporter l'ensemble des paquets Debian pendant 5 ans (sur les architectures où il y a des utilisateurs qui cherchent une version LTS). Mais les moyens d'y arriver sont multiples, d'un côté il faut travailler au jour le jour en corrigeant les CVE sur la version courante, et de l'autre il serait bon de faire un travail en amont pour s'assurer que les logiciels intégrés à Debian 9 Stretch puissent être maintenus pendant 5 ans supplémentaires ! Mon objectif est bien d'arriver à une situation où nous avons assez de ressources pour pouvoir avoir un impact sur les versions en développement et pas seulement sur la version LTS actuelle.

Au delà, j'aimerai que LTS soit une porte d'entrée pour que les entreprises prennent conscience de l'importance de leur implication et qu'ensuite elles contribuent non seulement à LTS mais aussi à d'autres projets Debian qui leur seront bénéfiques à plus long terme.

Jdh : Passons maintenant à un sujet qui passionne les utilisateurs du Logiciel Libre : les rapports Debian-Ubuntu. Toi qui es au cœur du projet Debian depuis des années, peux-tu nous retracer rapidement l'évolution de ces rapports et l'état actuel des interactions entre les deux projets ?

Raphaël : Je ne crois pas que cela soit encore un sujet si passionnant. Il y a eu des tensions au début lorsque Canonical avait embauché un grand nombre de développeurs Debian et qu'ils n'avaient pas les moyens de contribuer en retour à Debian. De nos jours, la communauté Ubuntu est plus large que juste les employés Canonical et les relations sont bien meilleures. De nombreux contributeurs Debian sont aussi des (anciens) contributeurs Ubuntu.

Le plus gros regret que j'ai c'est que Canonical n'ait jamais fait l'effort d'essayer d'intégrer ses développements les plus importants dans Debian, comme Unity par exemple.

Jdh : Tu es connu du grand public pour ton livre "The Debian Administrator’s Handbook" en anglais ou "Cahier de l'admin Debian" en français qu'on aime beaucoup. On trouve également géniales les initiatives que tu as lancées pour libérer les différentes versions. Peux-tu nous parler dans un premier temps de ces initiatives de libération, puis dans un second temps du processus de production du livre en lui-même tel qu'il est aujourd'hui (auto-édition, revue "communautaire", etc) ?

Raphaël : Le livre français avait été écrit pour le compte des éditions Eyrolles et c'est donc eux qui contrôlaient les droits sur le livre. N'ayant jamais réussi à en faire publier une traduction anglaise, Eyrolles a accepté de nous rendre (à moi et Roland) les droits sur une éventuelle traduction anglaise. La première campagne de financement visait simplement à nous donner les moyens de faire ce travail de traduction, avec un palier bonus où la traduction était en plus publiée sous licence libre.

Une fois cet objectif atteint, il restait le livre français sous licence propriétaire alors que le livre anglais était libre. Il fallait corriger cela et cela nécessitait de renégocier avec Eyrolles et de les convaincre que libérer le livre français était la bonne solution. On a profité d'une nouvelle édition à venir pour imaginer un plan gagnant-gagnant : une nouvelle campagne de libération permettait à la fois à Eyrolles d'écouler son stock de livre de l'édition précédente, de financer les frais d'édition de la prochaine édition et de financer une partie du travail des auteurs. Ainsi même si le livre ne se vendait pas (parce qu'il était libre), Eyrolles ne perdrait pas (trop) d'argent.

Au final, le livre français continue de se vendre, même si les chiffres sont plutôt faibles (moins d'un millier d'exemplaires par an).

D'un point de vue plus technique, le livre est rédigé en DocBook XML, il est maintenu dans un dépôt Git comme tout projet libre qui se respecte, les traductions sont gérées avec Publican qui génère des fichiers .po (et les traducteurs mal à l'aise avec les fichiers .po peuvent utiliser Weblate). Le PDF du livre papier est généré avec dblatex et une feuille de style LaTeX personnalisée. Il est imprimé à la demande par Lulu.com pour la version anglaise tandis que la version française est toujours éditée par Eyrolles.

Il se trouve justement que je passe pas mal de temps sur mon livre ces derniers temps car nous sommes en train de finaliser la version Jessie (Debian 8) du livre. J'invite ceux qui veulent être prévenus de la sortie de mon livre à s'abonner à ma newsletter (soit en anglais, soit en français). Et vous pouvez aussi déjà en profiter en ligne bien que la traduction ne soit pas terminée... et nous signaler les éventuelles coquilles avant sa publication !

Gravatar de Journal du hacker
Original post of Journal du hacker.Votez pour ce billet sur Planet Libre.

RaspbianFrance : Découvrir Linux, cours d’introduction pour les débutants

lundi 4 janvier 2016 à 14:50

Aujourd’hui nous vous proposons un tutoriel qui tient plus du cours que du guide d’installation.

En effet, nous faisons très souvent des tutoriels proposant à nos lecteurs l’installation ou la configuration de logiciels sous Linux. Cependant, nous recevons également très régulièrement des mails de personnes désireuses de découvrir la Raspberry Pi mais qui se sentent bloquées par le fait qu’elles ne connaissent pas Linux.

De même, nombre d’entre-vous nous posent des questions relatives à la gestion des droits, des utilisateurs ou d’autres sujets que nous ne pouvons pas directement aborder dans un tutoriel dédié.

Nous vous proposons donc ici un cours d’introduction à Linux qui devrait vous permettre de prendre en main la Raspberry Pi et découvrir les bases de l’utilisation en ligne de commande de Linux.

 

Le matériel nécessaire pour ce cours Linux

Avant de passer au cours à proprement parler, voyons rapidement le matériel dont vous aurez besoin si vous souhaitez tester les différentes commandes présentées dans le cours.

Dans l’absolu vous aurez uniquement besoin d’un ordinateur avec une distribution GNU/Linux. De préférence une distribution de type Debian (donc Debian et Raspbian, mais également Ubuntu et tous ses dérivés).

Deux possibilités donc, soit vous possédez un ordinateur sous Linux, soit vous utilisez une machine virtuelle.

Nous vous encourageons bien entendu à rejoindre la grande communauté de la Raspberry Pi si cela n’est pas déjà fait ! Dans ce cas, vous trouverez tous les accessoires nécessaires sur notre page dédiée.

 

À qui est destinée cette introduction à Linux

Le cours présenté ici est à destination des personnes n’ayant jamais utilisé Linux ou qui débutent avec ce merveilleux système. Il n’est pas prévu pour être exhaustif ou poussé !

Ce cours a été initialement créé dans l’idée de donner à une classe d’étudiants les bases nécessaires à la prise en main de Linux et à l’administration basique d’un serveur. Nous partons ici du principe que les étudiants en question n’ont jamais entendu parler ni de Linux, ni de GNU, ni de ligne de commande ! Nous partons donc du tout début !

Le but est donc de former des personnes aux bases de Linux sur un cours d’une durée d’environ 8h00 maximum.

Le cours a été pensé dans l’optique de servir de support de présentation qui sera distribué en fin de séance afin de permettre aux élèves de l’utiliser comme une fiche complète de révision. Si vous devez former des personnes à l’utilisation de Linux, animer un cours d’introduction, etc., nous vous encourageons à réutiliser cette présentation ! Nous vous demandons seulement de citer la source du cours !

 

Les points de Linux abordés dans ce cours

Ce cours tente d’introduire les points que nous avons jugés les plus importants au sein de GNU/Linux. Voici donc la liste des points abordés :

Nous n’abordons pas dans ce tutoriel l’installation d’un OS Linux ou autre, seulement son utilisation.

 

Introduction à GNU/Linux

Pour ceux que cela intéresse, ce cours à été réalisé à l’aide du framework reveal.js. Vous pouvez le retrouver en plein écran à l’adresse suivante : http://raspbian-france.fr/cours/slides-linux-introduction.html

Envie de pousser plus loin avec Linux, besoin d’un tutoriel plus complet ? Allez voir le cours de notre partenaire Éléphorm pour apprendre à gérer votre serveur web !

 

Cet article Découvrir Linux, cours d’introduction pour les débutants est apparu en premier sur Raspbian-France.

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

Progi1984 : Capturer un flux RTSP dans un fichier via ffmpeg

lundi 4 janvier 2016 à 10:00

J’ai eu besoin de récupérer un flux RTSP, protocole souvent utilisé pour streamer des vidéos sur Internet.

Pour cela, un seul outil dans ma boite à outils m’aura été utile : ffmpeg.

Capturer un flux RTSP dans un fichier via ffmpeg

La ligne de commande est simple :

ffmpeg -i rtsp://123.45.67.89/file.mp4 -acodec copy -vcodec copy local.mp4

Soit au final :

C:\\Users\\user>ffmpeg -i rtsp://123.45.67.89/file.mp4 -acodec copy -vcodec copy local.mp4
ffmpeg version N-50911-g9efcfbe Copyright (c) 2000-2013 the FFmpeg developers
  built on Mar 13 2013 21:26:48 with gcc 4.7.2 (GCC)
  configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-libass --enable-libbluray --enable-libcaca --enable-libfreetype --enable-libgsm --enable-libilbc --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libxavs --enable-libxvid --enable-zlib
  libavutil      52. 19.100 / 52. 19.100
  libavcodec     55.  0.100 / 55.  0.100
  libavformat    55.  0.100 / 55.  0.100
  libavdevice    54.  4.100 / 54.  4.100
  libavfilter     3. 45.103 /  3. 45.103
  libswscale      2.  2.100 /  2.  2.100
  libswresample   0. 17.102 /  0. 17.102
  libpostproc    52.  2.100 / 52.  2.100
[rtsp @ 022daae0] UDP timeout, retrying with TCP
Input #0, rtsp, from 'rtsp://123.45.67.89/file.mp4':
  Metadata:
    title           : WowzaMediaServer
  Duration: 00:51:49.30, start: 0.000000, bitrate: N/A
    Stream #0:0: Audio: aac, 48000 Hz, stereo, fltp
    Stream #0:1: Video: h264 (Main), yuv420p, 640x360 [SAR 1:1 DAR 16:9], 25 fps, 25 tbr, 90k tbn, 50 tbc
Output #0, mp4, to 'local.mp4':
  Metadata:
    title           : WowzaMediaServer
    encoder         : Lavf55.0.100
    Stream #0:0: Video: h264 ([33][0][0][0] / 0x0021), yuv420p, 640x360 [SAR 1:1 DAR 16:9], q=2-31, 25 fps, 90k tbn, 90k tbc
    Stream #0:1: Audio: aac ([64][0][0][0] / 0x0040), 48000 Hz, stereo
Stream mapping:
  Stream #0:1 -> #0:0 (copy)
  Stream #0:0 -> #0:1 (copy)
Press [q] to stop, [?] for help
[mp4 @ 022d8dc0] pts has no value
[mp4 @ 022d8dc0] st:0 PTS: 0 DTS: 0 < 3073 invalid, clipping
[mp4 @ 022d8dc0] st:0 PTS: 3600 DTS: 3600 < 7201 invalid, clipping
[mp4 @ 022d8dc0] st:0 PTS: 1024 DTS: 1024 < 3074 invalid, clipping
[mp4 @ 022d8dc0] st:0 PTS: 2048 DTS: 2048 < 3075 invalid, clipping
[mp4 @ 022d8dc0] st:0 PTS: 3072 DTS: 3072 < 3076 invalid, clipping
[mp4 @ 022d8dc0] st:0 PTS: 10800 DTS: 7200 < 7202 invalid, clipping
frame=77732 fps= 24 q=-1.0 Lsize=  417624kB time=00:51:49.23 bitrate=1100.3kbits/s    58.88 bitrate=1087.5kbits/s
video:375616kB audio:39718kB subtitle:0 global headers:0kB muxing overhead 0.551422%

Cet article Capturer un flux RTSP dans un fichier via ffmpeg est apparu en premier sur RootsLabs.

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