Vous connaissez les terminaux, ces petites fenêtres le plus souvent noires où l’on tape des lignes de commande bizarres ? Eh bien, vous risquez d’être surpris : le choix du logiciel pour faire ça n’est pas aussi simple que ça en a l’air et des gens continuent de proposer de nouvelles alternatives. Cette dépêche vise à présenter rapidement quelques fonctionnalités intéressantes que les terminaux historiques ne géraient pas forcément et à présenter quelques terminaux.
Cozy, votre domicile numérique
Je suis très fier de vous annoncer que Cozy est officiellement lancé.
Qu’est‐ce que Cozy ? Eh bien, c’est tout d’abord un domicile numérique, un espace où vous êtes chez vous avec vos données (fichiers, photos, bancaires, vacances). Cozy vous permet également de récupérer vos données depuis des services tiers pour mieux les utiliser. Comment ? Avec les connecteurs qui vous les rangent automatiquement pour ne plus perdre de temps à les chercher. Enfin, on peut faire confiance à son Cozy : le code est libre, il est possible de s’auto‐héberger, Cozy Cloud (la société) ne fait pas dans la publicité ciblée, l’exploitation ou la revente de vos données. Grâce à tout ça, Cozy peut vous simplifier votre vie numérique.
La suite de la dépêche permet de découvrir les différentes applications de Cozy et de revenir sur les échanges qui avaient eu lieu lors de la précédente dépêche qui annonçait les premiers travaux sur la nouvelle version de Cozy.
Deux failles critiques : Meltdown et Spectre
Ces derniers jours, les rumeurs allaient bon train sur les réseaux sociaux suite à l’intégration en urgence d’un gros correctif dans la RC-6 du noyau Linux. Cela allait à l’encontre de toutes les habitudes de Linus Torvalds, ce qui laissait penser que les conditions étaient vraiment particulières. Et le moins que l’on puisse dire est que nous ne sommes pas déçus. Ce n’est pas une faille critique, mais deux, qui viennent d’être dévoilées : Meltdown et Spectre, de leur petit nom.
Nous vous invitons à lire le journal de Pinaraf< à ce sujet, bien qu’incomplet le jour où il l’a écrit. Depuis la date de sa publication, la faille Spectre a ensuite été révélée et, si cette dernière s’avère d’une ampleur moindre que Meltdown chez Intel, elle toucherait tous les fondeurs et la plupart de leurs produits).
Campagne de financement d’eelo pour un smartphone respectueux de la vie privée
Gaël Duval, le créateur de la distribution Mandrake Linux, a décidé de se lancer dans un nouveau combat : créer un système d’exploitation pour smartphone / ordinateur de poche qui soit respectueux de la vie privée, libre et utilisable par le commun des mortels. Ce projet nommé eelo est à but non lucratif, dans l’intérêt du public.
Mais pour avancer et atteindre une taille critique suffisante pour maintenir un système d’exploitation, il y a besoin de pouvoir payer des développeurs et donc de financer tout ça. Gaël Duval a décidé de faire appel à un financement participatif pour atteindre un premier produit utilisable en partant de LineageOS. Il espère pouvoir ensuite attirer des contributeurs et itérer sur de nouvelles versions.
CouchDB passe la seconde vitesse
CouchDB est une base de données de la famille NoSQL. C’est même l’une des plus anciennes, sortie en 2005. Elle est ensuite devenue un projet Apache en 2008. Elle a pris du retard sur ses concurrents sur de nombreux aspects, mais sa grande force, la réplication entre instances primaires, reste inégalée. Pouchdb, un portage de CouchDB en JavaScript capable de tourner dans les navigateurs, est compatible avec le protocole de réplication de CouchDB et la combinaison des deux est très intéressante pour développer des applications Web dites « progressives » (PWA), capables de travailler sans connexion Internet. Il existe d’autres implémentations compatibles avec ce protocole de réplication, dont Couchbase lite pour mobile.
La version 2.0 de CouchDB est attendue depuis plusieurs années et a pris beaucoup de retard. Elle vient enfin de sortir avec de grandes nouveautés, dont la prise en charge du clustering, un nouveau moteur de « requêtage » et une interface d’administration plus moderne.
Donnez votre avis sur la nouvelle architecture de Cozy
Cozy est un cloud personnel que nous suivons et évoquons régulièrement sur LinuxFr.org. Il a fait récemment parler de lui via le recrutement de Tristan Nitot, sa version 2.0, sa quête permanente d'améliorations, sa toute nouvelle application de synchronisation de fichiers ou encore sa récente levée de fonds. Aujourd'hui, l'équipe Cozy Cloud fait appel à vous.
Nous souhaitons développer une nouvelle version majeure de Cozy qui puisse répondre à de nouveaux besoins :
- permettre aux auto-hébergés d'avoir du multi-utilisateurs
- diminuer grandement la consommation de ressources par instance Cozy hébergée pour en réduire le coût
- améliorer la sécurité globale
- revoir certains aspects de la plateforme qui ne nous plaisaient pas.
Fidèle à notre attachement pour le Logiciel Libre, le dépôt git dans lequel le développement va se faire est public. Il contient pour le moment surtout un document qui décrit la nouvelle architecture que l'on souhaite mettre en place.
Mais avant de commencer à coder, il nous semble particulièrement important d'avoir l'avis de la communauté. Donnez-nous vos commentaires et impressions. Nous souhaitons savoir ce que nous avons pu manquer, quelles sont les forces et faiblesses que vous voyez dans cette architecture, ce que nous pourrions faire différemment. Alors, à vos claviers !
Synchronisez vos fichiers avec cozy-desktop
Cozy Cloud est une plate-forme libre qui vous permet de mieux gérer votre vie numérique en vous réappropriant vos données. Grâce à elle, vous pouvez installer de nombreux services web à usage personnel sur votre propre machine à la maison ou louée chez un hébergeur.
Et maintenant, il est possible de synchroniser vos fichiers entre un ou plusieurs ordinateurs personnels et son nuage Cozy. Le client « desktop » vient de sortir en version beta pour Linux.
Sortie de Electron 1.0
Electron permet de construire des applications de bureau multi-plateformes avec les technologies du web (HTML, CSS et JS). Il était initialement développé par Github pour son éditeur de texte Atom et est maintenant un projet à part entière. Il vient d'atteindre la version 1.0, signe d'une certaine maturité.
Node.js passe la sixième vitesse
Node.js est la principale implémentation du langage JavaScript côté serveur. Elle utilise V8, le moteur JavaScript de Google Chrome, et vient d’atteindre la version 6.0.0 le 26 avril 2016.
La montée de version de V8 vers la version 5.0 a d'ailleurs permis une meilleure prise en charge d'ES6, avec 93 % des fonctionnalités couvertes. Parmi les autres nouveautés, on trouve des performances accrues (notamment pour le chargement des modules), une meilleure stabilité et utilisabilité des API JavaScript (notamment Buffer et File System).
Peu de temps après la sortie de la version 6.0.0, des failles OpenSSL ont été annoncées, ce qui a conduit à la sortie d'une version 6.1.0.
Crystal, un langage proche de Ruby, en version 0.16
Crystal est un langage de programmation, encore jeune. Il s'inspire de Ruby pour la syntaxe mais vise des performances proches du C. La version 0.16 vient de sortir, avec un nouvel algorithme pour l'inférence de types. À noter, le compilateur de Crystal est écrit en Crystal.
Voici à quoi ressemble un serveur HTTP basique écrit en Crystal :
# A very basic HTTP server
require "http/server"
server = HTTP::Server.new(8080) do |context|
context.response.content_type = "text/plain"
context.response.print "Hello world, got #{context.request.path}!"
end
puts "Listening on http://0.0.0.0:8080"
server.listen
À la découverte d'un nouveau langage, Elm
Découvrons un nouveau langage : Elm. Celui-ci vise à rendre accessible la programmation fonctionnelle pour les développeurs Web. JavaScript a ses qualités et ses défauts ; il est parfois intéressant d'aller voir ailleurs pour mieux les comprendre. Même si vous ne comptez pas utiliser Elm plus tard, cela reste intéressant car il vous permettra de découvrir de nouvelles façons de faire et vous permettra de devenir un meilleur développeur. D'ailleurs, on peut noter que de nombreuses bibliothèques JavaScript, comme Redux, annoncent clairement s'être inspirées d'Elm.
Elm a été créé dans le but d'apporter fiabilité et maintenance simplifiée aux applications JavaScript dans les navigateurs. Son créateur, Evan Czaplicki s'est donc naturellement inspiré des langages fonctionnels, qui sont conçus justement pour avoir ces caractéristiques. En utilisant la bibliothèque JavaScript virtual-dom, il s'est également assuré que les performances soient au niveau des principaux frameworks.
Et si JavaScript allait droit dans le mur ?
Cette dépêche pose la question de l’avenir du JavaScript. Celui‐-ci continue de gagner en popularité, mais aussi en complexité. L’auteur du journal a étudié d’autres langages encore peu connus (Elixir, Elm, Pony, Oden et Crystal) et ceux‐ci lui ont fait sauter aux yeux les défauts du JavaScript. Il s’interroge donc sur le futur de ce langage.
Dans les commentaires du journal, de nombreux développeurs ont fait un retour sur leur expérience. Certains apprécient le JavaScript (souvent, un sous‐ensemble de ce langage qui va à l’encontre des dernières nouveautés). D’autres, souhaiteraient fortement s’en débarrasser, mais quasiment tous sont d’accord sur le fait qu’il va rester grâce à son monopole sur les navigateurs).
Certains ont encouragé à essayer leur langage de prédilection : Go, OCaml, ClojureScript, etc.
Enfin, on peut également retrouver un certain espoir avec WebAssembly (le successeur d’asm.js), qui permettrait à de nombreux langages d’être compilés vers la plate‐forme Web.
Nouvelle application contacts pour Cozy Cloud
Cozy Cloud est une plate-forme libre qui va vous permettre de mieux gérer votre vie numérique en vous réappropriant vos données. Grâce à elle vous pouvez installer de nombreux services web à usage personnel sur votre propre machine à la maison ou louée chez un hébergeur.
Cozy Cloud permet d'installer des applications. Quelques unes sont développées par l'équipe de Cozy Cloud, comme l'application Contacts qui a été entièrement réécrite récemment. D'autres sont proposées par la communauté. Kresus, par exemple, est une application de gestion des finances personnelles développée par Benjamin Bouvier (Mozilla).
Un point d'avancement sur Neovim
Neovim est un éditeur de texte, issu d'un fork de Vim. Il vise à le rendre plus moderne. En particulier, faciliter le développement et l'utilisation de greffons, et permettre de l'intégrer plus facilement dans d'autres outils.
Le fork date d'un peu plus d'un an et le travail commence à payer. En plus d'un gros nettoyage de la base de code, les développeurs de Neovim ont mis en place un système de plugins, de greffons, qui peuvent désormais tourner à l'extérieur du processus principal et communiquer avec lui via msgpack. On peut également apprécier la possibilité de lancer un terminal à l'intérieur de Neovim, grâce à l'inclusion récente de la libvterm.
Mais pour accélérer le développement, Neovim a besoin de vous. Le développeur principal, @tarruda passe une partie de son temps sur Neovim et une autre partie à faire des missions en freelance pour gagner sa vie. Grâce à des dons, il pourrait diminuer le temps passé sur les missions, et ainsi passer plus de temps à faire vivre Neovim.
Personnellement, je suis un utilisateur comblé de Neovim depuis quelques mois. Bien que celui-ci soit toujours en version alpha, il est très stable et le passage de Vim à Neovim s'est fait sans aucun souci. Aussi, j'ai participé à l'appel à dons et vous encourage à faire de même pour promouvoir ce projet qui le mérite bien !
Quelques nouveautés sur votre site web préféré
Pour fêter ma millième entrée de suivi fermée sur LinuxFr.org, j'ai décidé de faire une petite dépêche mettant en avant quelques nouveautés récentes.
Premier changement, la feuille de style par défaut a été un peu revue. La largeur maximale est maintenant limitée pour les grands écrans afin de rendre la lecture plus confortable.
La version personnalisée de Markdown utilisée pour saisir du contenu sur le site permet maintenant d'inclure des formules mathématiques, en ligne à l'intérieur d'un paragraphe ou dans un bloc séparé. Par exemple, ou, pour la version longue :
Autre nouveauté, il est possible de récupérer une version markdown des contenus du site, grâce à un lien « Markdown » en bas de ceux-ci. Vous pouvez notamment essayer sur cette dépêche pour voir à quoi ressemblent les formules mathématiques :p
Enfin, le moteur de recherche du site a été revu. Il fonctionne désormais avec ElasticSearch 1.0. Il devrait être un peu plus pertinent et propose maintenant le filtrage par tags.
NdM: Pour fêter cela, Nono a décidé d'envoyer une coupe de champagne aux 1000 premiers lecteurs qui en feront la demande.