Linuxfr.org
Open Source Experience : REX de l'édition 2024 et appels en cours pour #OSXP2025
Open Source Experience (OSXP), a lancé son appel à conférence pour sa 5e édition autour du thème « L’open source, clé de l’autonomie stratégique de l’Europe ». Profitons-en aussi pour faire l'appel à stand du village associatif ainsi qu'un (petit) retour sur la quatrième édition qui s'est tenue les 4 et 5 décembre derniers au Palais des Congrès de Paris. L'événement était cette fois couplé à DevOpsREX qui a fait son grand retour. Et encore une fois, nous étions là pour vous rencontrer, interagir avec la communauté et vous faire plaisir !
Cette année, Open Source Experience déménage à la Cité des Sciences et de l'Industrie, porte de la Villette (toujours à Paris) et se tiendra les 10 et 11 décembre 2025. Cela nous permettra d'avoir quelques stands de plus pour le village associatif !
- lien nᵒ 1 : Open Source Experience website
- lien nᵒ 2 : Appel à stands du village associatif
- lien nᵒ 3 : Appel à Conférence OSXP 2025
- lien nᵒ 4 : Photos officielles d'OSXP 2024
- lien nᵒ 5 : Nos photos d'OSXP 2024
- lien nᵒ 6 : Videos d'OSXP 2024
- lien nᵒ 7 : Venez nous retrouver à Open Source Experience les 4 et 5 décembre #OSXP2024
(Début de) la fin de Windows (10)
La prise en charge de Windows 10 se termine le 14 octobre 2025, forçant ses utilisateurs à passer à Windows 11 qui requiert des performances beaucoup plus élevées tout en poursuivant la prise de contrôle de ses utilisateurs.
La campagne « End of 10 » (fin de [Windows] 10) initiée il y a quelques mois vise à dénoncer le gaspillage de ressources (en forcant le remplacement anticipé de machines), et incite à un passage à Linux.
La lancement de la campagne sur les réseaux sociaux (i.e. Mastodon) a démarré le 28 mai.
- lien nᵒ 1 : Pouet de lancement
- lien nᵒ 2 : Site de la campagne
La campagne est axée sur cinq arguments principaux :
- les économies financières : pas de coût de licence, pas d'obligation de renouveler son matériel de manière anticipée.
- l'amélioration du respect de la vie privée : s'affranchir des publicités et logiciels espions intégrées de force dans Windows.
- l'écologie : éviter un remplacement d'ordinateur a un impact carbone direct.
- bénéficier d'un support adapté : communautaire ou professionnel, en ligne ou en physique.
- reprendre contrôle de son ordinateur : bénéficier des libertés des logiciels libres pour utiliser votre ordinateur comme vous le souhaitez.
La campagne est née du groupe de travail KDE Eco réfléchissant sur les impacts environnementaux des logiciels, cependant il est important de noter que dans le cadre de cette campagne la communication doit promouvoir « Linux » de manière générale et non promouvoir telle ou telle distribution. L'objectif premier est de quitter Windows.
Le partage sur les réseaux sociaux vise à faire connaître l'initiative de manière plus large, cependant le succès est principalement attendu en s'appuyant sur des acteurs locaux existant : cafés réparation, boutiques informatiques, …
Le site de la campagne fourni à la fois un registre des lieux et des dates où il est possible de se renseigner et se lancer. Plusieurs dizaines de possibilités ont déjà été ajoutées.
Participer !De nombreuses façons de participer sont possibles :
- prendre contact avec les structures locales (repair cafés, GULL, associations, …)
- aider lors d'une install party ou en organiser une près de chez vous (et déclarer l'évènement sur le site)
- en parler avec vos proches
- relayer les messages Mastodon
- …
Microsoft a ouvert la porte pour faire de 2025 l'année Linux ! À nous de mettre le pied dans la fenêtre !
Télécharger ce contenu au format EPUBCommentaires : voir le flux Atom ouvrir dans le navigateur
20 ans de Fedora-fr : septième entretien avec Johan ancien contributeur à Fedora-fr
Dans le cadre des 20 ans de Fedora-fr (et du Projet Fedora en lui-même), Charles-Antoine Couret (Renault) et Nicolas Berrehouc (Nicosss) avons souhaité poser des questions à des contributeurs francophones du Projet Fedora et de Fedora-fr.
Grâce à la diversité des profils, cela permet de voir le fonctionnement du Projet Fedora sous différents angles pour voir le projet au delà de la distribution mais aussi comment il est organisé et conçu. Notons que sur certains points, certaines remarques restent d'application pour d'autres distributions.
N’oublions pas que le Projet Fedora reste un projet mondial et un travail d’équipe ce que ces entretiens ne permettent pas forcément de refléter. Mais la communauté francophone a de la chance d’avoir suffisamment de contributeurs et des contributrices de qualité pour permettre d’avoir un aperçu de beaucoup de sous projets de la distribution.
Chaque semaine un nouvel entretien sera publié sur le forum Fedora-fr.org, linuxfr.org et le blog de Renault.
L'entretien du jour concerne Johan Cwiklinski (pseudo trasher), ancien contributeur de Fedora-fr.org et actuel mainteneur du logiciel de gestion Galette.
Bonjour Johan, peux-tu présenter brièvement ton parcours ?
Je suis principalement développeur (PHP, Python, Java), et un peu administrateur système - complètement autodidacte. J'ai découvert le monde de GNU/Linux en 1998 en achetant avec deux camarades de fac une distribution Red Hat 5.2 :D
Ce n'est que quelques années plus tard, en 2002, que je reviendrai à Linux ; rapidement comme OS principal. J'ai testé durant cette période différentes distributions comme Red Hat, Fedora, Mandrake et Ubuntu - pour revenir définitivement à Fedora en 2006.
Peux-tu présenter brièvement tes contributions au projet Fedora ?
J'ai traduit de la documentation et des logiciels pour le projet.
J'ai rédigé de la documentation pour le projet officiel (un peu) et pour le communauté francophone (beaucoup plus).
J'ai rédigé des articles pour des magazines divers.
J'ai empaqueté et maintenu différents logiciels dans les dépôts.
J'ai participé à la mise en place et maintenance de certaines versions du site internet de la communauté francophone.
J'ai participé à plusieurs salons informatiques dans le Nord ainsi qu'à Paris et à Bruxelles (FOSDEM), avec d'autres contributeurs francophones de l'époque.
J'ai été responsable de la mise en place de la documentation "Fedora-fr" pendant plusieurs années.
J'ai mis en place avec l'aide d'autres contributeurs différents canaux pour apporter des contributeurs francophones à participer au packaging sur Fedora - via la rédaction d'une documentation assez complète, des présentations lors d'évènements sur Paris, un canal IRC dédié, …,
Et j'ai aidé à monter l'association "Fedora-fr" - pour laquelle j'ai été trésorier la première année d'existence.
Qu'est-ce qui fait que tu es venu sur Fedora et que tu y es resté (si tu t'en sers encore) ?
Alors, oui, je tourne encore sous Fedora ; que ce soit sur mon ordinateur personnel ou celui du boulot. J'ai même une Fedora sur un serveur dédié que j'administre
Nouvelle version de NumCalc, la calculatrice scientifique en ligne de Fabrice Bellard
Fabrice Bellard vient de mettre à jour NumCalc, sa calculatrice scientifique et graphique en ligne, qui utilise maintenant un nouveau code indépendant de QuickJS (je vous renvoie à la dépêche qui abordait cette question).
Le nouveau code est un mix entre Javascript, Python et Julia. Le code Javascript utilise la bibliothèque LibBF (MIT). L'interface a été retravaillée mais reste minimaliste pour être pratique et légère. Elle est devenue responsive et s'affiche très bien sur un mobile. Elle accepte maintenant des entrées en syntaxe Calc et Javascript.
NumCalc est rapide, ça m'a impressionné. La réactivité vient aussi du navigateur et de l'ordinateur puisque tout se passe sur votre poste, rien n'est envoyé au serveur. C'est surtout une sensation. Par exemple l'application Qalculate! me parait moins nerveuse, comme on dit d'une voiture. Bref, NumCalc est agréable.
Les deux précédentes versions sont toujours disponibles.
- lien nᵒ 1 : Site de NumCalc
- lien nᵒ 2 : La bibliothèque Javascript LibBF
- lien nᵒ 3 : Site de Fabrice Bellard
- lien nᵒ 4 : La dépêche sur QuickJS
Commentaires : voir le flux Atom ouvrir dans le navigateur
Revue de presse de l’April pour la semaine 22 de l’année 2025
Cette revue de presse sur Internet fait partie du travail de veille mené par l’April dans le cadre de son action de défense et de promotion du logiciel libre. Les positions exposées dans les articles sont celles de leurs auteurs et ne rejoignent pas forcément celles de l’April.
- [La Tribune] OPINION. «L'open source, un atout incontournable de la souveraineté numérique»
- [ZDNET] La Banque mondiale publie son éditeur de métadonnées en open source
- [ZDNET] Donnez une seconde vie à votre PC sous Windows 10 avec cette distribution Linux allégée
- lien nᵒ 1 : April
- lien nᵒ 2 : Revue de presse de l'April
- lien nᵒ 3 : Revue de presse de la semaine précédente
- lien nᵒ 4 :
Photos et traces gps dans un blog statique
Cette dépêche va présenter une méthode pour afficher sur un site personnel les traces, récits et photographies de balades (pédestres, cyclistes par exemple).
Comme le contenu à afficher est diversifié (texte, photographies, cartes), la solution retenue sera un blog. Dans un soucis de sobriété numérique, le site sera sans base de données.
Pour l'aspect esthétique, la barre de navigation et les cartes seront situées dans la partie gauche des pages et surtout, la carte ne bougera pas avec la navigation dans la page.
- 1 - Préparation de pelican
- 2 - Peaufinage de base
- 3 - Gestion cartographique
- 4 - Gestion des photographies associées à notre cartographie
- 5) Dernières modifications
- 6) Conclusion
N'ayant pas trouvé d'alternative libre à Polarstep, la solution retenue se base sur les briques logicielles libres suivantes :
- un moteur de blog static : pelican (AGPL v3.0)
- des thèmes pour le blog
- des bibliothèques cartographiques : leaflet (BSD 2)
Pelican propose d'écrire chaque billet de blogs dans un fichier texte indépendant (au format markdown ou reStructuredText).
Pelican les convertit en html et l'organisation du site ainsi généré (catégories, mots-clefs, archivage) se fait par le biais de gabarits (qui sont dans un sous-répertoire templates)
a) Le moteurL'installation ne sera pas développée ici, pelican étant disponible dans de nombreuses distributions.
Il faut créer la structure de travail (dans le répertoire personnel de notre choix) :
pelican-quickstart b) Installation du thème graphiqueEn allant sur le dépôt des thèmes de pelican, il est possible de trouver le style graphique qui nous convient le mieux.
Nous allons utiliser le thème pelican-blue (sous licence MIT 2.0), qui a l'avantage d'être simple, et commençons son installation :
- création du répertoire theme dans notre structure de travail
- décompression de l'archive du thème dans le répertoire « theme »
- modification du fichier pelicanconf.py pour configurer notre site. Il faut adapter quelques variables :
- modifications propres au thème. Souvent l'auteur d'un thème propose de le personnaliser à partir de variables déclarées dans le fichier de configuration.
On va créer notre premier billet
Title: Première sortie Date: 2025-05-01 Modified: 2025-05-01 Category: Lieux Slug: depart Tags: bonjour, balade Bonjour tout le monde ! Quelle chouette sortie j'ai faite. d) Génération de notre siteOn lance la première compilation :
make clean make htmlOn peut voir le résultat :
- soit en ouvrant directement le fichier index.html (présent dans le répertoire output)
- soit en lançant un mini serveur web (make serve) et lancer son navigateur web à l'adresse http://localhost:8000/
Pour plus de renseignements sur pelican, je vous invite à vous rendre sur la documentation du projet.
2 - Peaufinage de baseOn va maintenant nettoyer le code des gabarits, en supprimant les choses que l'on trouve inutiles ou qui nous déplaisent. Tout se passe dans le répertoire templates de notre thème.
- il y a les fichiers analytics.html et disqus.html
- une recherche par mot nous informe des éventuelles références à Google, Twitter, Facebook
On supprime les parties qui ne nous conviennent pas.
3 - Gestion cartographiqueNous attaquons désormais notre objectif : rendre visibles sur des cartes des fichiers de trace.
a) Gestion des cartesOn va maintenant configurer la gestion des cartes, par l'intermédiaire de leaflet. Comme l'indique sa page wikipédia, leaflet est très largement utilisé et très pratique.
On va donc
- le télécharger,
- le décompresser dans le répertoire static de notre thème
- modifier les entêtes de nos gabarits (cela se fait le plus souvent dans le fichier base.html) pour y ajouter au niveau <head> les références à leaflet :
Comme on a récupéré en local les fichiers, on met des chemins propres à notre arborescence (via {{ SITEURL }}/theme/).
b) Gestion des fichiers de trace (gpx)Elle va se faire par l’intermédiaire d'un module supplémentaire https://github.com/mpetazzoni/leaflet-gpx (BSD 2).
De la même manière qu'on a intégré dans nos entêtes l'intégration de leaflet, nous allons ajouter une ligne pour faire référence à leaflet-gpx (bien vérifier le nom du fichier javascript) :
<script src="{{ SITEURL }}/theme/leaflet-gpx/gpx.js"></script>Par rapport à la documentation officielle, on retire l'attribut defer (puisque nous utilisons les fichiers locaux et non distants).
Pour tester notre environnement, on va déposer dans notre répertoire gpx un fichier de trace, puis on va ajouter dans notre billet les éléments de cartographie de notre voyage :
<div id="map" style="width: 600px; height: 400px;"></div> <script> var map = L.map('map'); L.tileLayer('http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', { attribution: 'Carte et données : <a href="http://www.osm.org">OpenStreetMap</a>' }).addTo(map); var gpx = '/gpx/FICHIER.gpx'; new L.GPX(gpx, {async: true}).on('loaded', function(e) { map.fitBounds(e.target.getBounds()); }).addTo(map); </script>On regénère notre site web, et on peut visualiser notre billet
Globalement, ça fait le boulot.
Mais on peut améliorer la chose : on peut par exemple cacher les marques de début et de fin d'itinéraire en insérant la ligne suivante après le async: true
markers: {startIcon: null, endIcon: null, }Mais surtout, nous souhaitons que pelican génère automatiquement la partie consacrée au fichier de trace (alors que dans notre test, nous avons dû l'ajouter nous-même) !
c) Modification des gabaritsSi l'on veut simplement ajouter notre fichier de trace et que notre gabarit le traite, on va ajouter cette information dans les entêtes de notre fichier markdown ! En effet pelican permet de créer des variables qui seront utilisables dans nos gabarits.
Nous allons donc créer et utiliser une variable (qui s'appellerait… Gpx par exemple), qui stockera le nom du fichier gpx à afficher (les chemins sont relatifs à notre site web)
Title: Première sortie Date: 2025-05-01 Modified: 2025-05-01 Category: Lieux Gpx: /gpx/monfichier.gpx Slug: depart Tags: bonjour, baladeNous modifions ensuite notre gabarit article.html pour qu'il génère la carte à partir de notre variable.
Pelican est très souple : basé sur Jinja2, il permet les boucles, les conditions et les variables.
Tous les éléments qu'il utilise sont insérés dans des accolades. Le fonctionnement est facilement lisible et compréhensible.
On va donc conditonner (avec if) l'insertion de leaflet.
{% if article.gpx %} <div id="map" style="width: 600px; height: 400px;"></div> <script> var map = L.map('map'); L.tileLayer('http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', { attribution: 'Carte et données : <a href="http://www.osm.org">OpenStreetMap</a>' }).addTo(map); var gpx = '{{ article.gpx }}'; new L.GPX(gpx, {async: true, markers: {startIcon: null, endIcon: null, } }).on('loaded', function(e) { map.fitBounds(e.target.getBounds()); }).addTo(map); </script> {% endif %}Bien entendu, nous supprimons ces références du fichier markdown correspondant à notre billet de test.
On regénère notre site web, et on peut visualiser notre billet… qui n'a pas changé : tout fonctionne. Pour chacune de nos sorties, il suffit donc d'indiquer le fichier de trace dans les entêtes pour que la carte soit insérée automatiquement dans notre billet.
Passons maintenant à l'intégration de nos photos.
4 - Gestion des photographies associées à notre cartographieNous avons besoin :
- d'une image
- de ses coordonnées géographiques (latitude et longitude)
Pour cela, nous allons procéder de la même manière que pour le fichier trace : nous allons créer et utiliser des variables dans les entêtes des fichiers markdown.
a) Fichier des billetsNous modifions encore une fois les entêtes en ajoutant autant d'informations (image, latitude et longitude) que de photos à afficher en miniatures.
Title: Première sortie Date: 2025-05-01 Modified: 2025-05-01 Category: Lieux Gpx: /gpx/monfichier.gpx Slug: depart Img: /images/image1.jpg Lat: 49.895517 Lon: 2.295983 Img: /images/image2.jpg Lat: 49.89443 Lon: 2.30137 Tags: bonjour, baladeOn remarque ici que l'on a mis plusieurs images avec les mêmes noms de variables.
b) Modification des gabaritsNous allons ensuite modifier les gabarits de pelican pour qu'ils positionnent des miniatures des photos sur notre trajet.
Nous allons à nouveau modifier notre fichier article.html, en y ajoutant (à la suite de notre précédente modification, dans la condition {% if article.gpx %}) le code suivant :
Nous commençons par indiquer l'icône qui s'affichera sur la carte à chaque photo mise en valeur
var MonIcone = L.icon({ iconUrl: '/images/app-photo.png', iconSize: [36, 36] });Puis nous codons l'affichage du marqueur (qui sera géré par leaflet).
{% if article.img %} {% if article.img is string %} imageTxt = 'Description'; L.marker([{{ article.lat }}, {{ article.lon }}], {icon: MonIcone}).bindPopup(imageTxt + '<br><img src="{{ article.img }}" width="200px"><a href="#bal5">plus de détail</a>').addTo(map); {% else %} {% for n in range(article.img| length) %} imageTxt = 'Description'; L.marker([{{ article.lat[n] }}, {{ article.lon[n] }}], {icon: MonIcone}).bindPopup(imageTxt + '<br><img src="{{ article.img[n] }}" width="200px"><a href="#bal5">plus de détail</a>').addTo(map); {% endfor %} {% endif %}La difficulté réside dans la gestion des éléments répétitifs :
- s'ils sont plusieurs, on peut utiliser les méthodes python des listes.
- s'il n'y en a qu'un seul, cette méthode renvoie toutes les lettres de notre variable ! Il a donc fallu tester si celle-ci est une chaine de caractères ou une liste.
Les choix sont ici purement personnels ou démonstatifs :
- on a laissé une variable imageTxt en dur, elle pourrait être passée dans les entêtes de nos fichiers markdown
- le texte du popup peut être adapté (on pourrait y ajouter un lien direct vers notre image par exemple)
- le lien (ancre) est à créer dans notre fichier markdown
- la taille de l'image du popup est en dur (on peut passer par une feuille de style css)
On regénère notre site web, et on peut visualiser notre billet :
Et lorsqu'on clique sur une icône d'appareil photo, on voit bien notre popup :
c) Gestion des photographiesComme indiqué plus haut, la taille des miniatures affichées peut se gérer :
- par CSS
- ou créer des miniatures (avec imagemagick) pour diminuer la charge de notre serveur (afficher une photo de 3000 pixels à 200 pixels n'est pas optimal). Dans ce cas, il suffira d'adapter notre gabarit pour lui indiquer où aller chercher les petites images (/images/miniatures/ par exemple)
Par contre, le point le plus compliqué est la gestion des coordonnées des photographies : il faut les rentrer à la main !
Pour les photographies qui n'intègrent pas les coordonnées dans leurs métadonnées, il n'y a pas d'autre solution que d'aller chercher sur une carte (openstreetmap par exemple) et de trouver le lieu de la prise de vue et de repérer les coordonnées.
Pour les photographies qui contiennent leurs coordonnées géographiques, on peut utiliser l'outil exiftool pour les récupérer. On peut éventuellement faire un script bash qui affiche les lignes d'entête pour notre billet (on n'a plus qu'à les recopier ou les rediriger vers un fichier texte) :
Nous avons utilisé les options -n qui affichent les valeurs numériques au format décimal (celui utilisé par openstreetmap pour les coordonnées) et -s3 pour avoir la valeur du champ sans le nom de son attribut.
5) Dernières modificationsNous venons de voir les différentes techniques qui permettent d'avoir le rendu que nous souhaitions. Et le résultat est déjà agréable à regarder.
Nous pourrions nous arrêter ici, mais vous voulons que la carte reste en permanence dans le menu latéral. La solution est de la mettre dans une balise <aside>.
a) Modifier les gabaritsNotre thème comporte déjà une telle balise : elle est dans le fichier base.html… ce qui signifie qu'il ne peut pas voir les informations sur les articles (donc nos entêtes) !
La solution va donc consister à déplacer, à l'intérieur du fichier article.html, tout notre code dans une section (que nous appellerons mamap :
{% block mamap %} Mettre ici tout le code sur notre gestion cartographique {% endblock %}Et dans le fichier base.html, on va insérer à l'intérieur des balises <aside> son appel (qui ne tient que sur deux lignes) :
{% block mamap %} {% endblock %} b) Ajuster les feuilles de styleIl faut surcharger le comportement de la carte gérée par leaflet :
.leaflet-container { width: 400px; height: 300px; max-width: 100%; max-height: 100%; margin: auto; }Et vérifier que les largeurs de la carte, et de <aside> soient compatibles.
Le résultat avec nos dernières modifications est désormais le suivant
6) ConclusionIl est temps de finir cette dépêche, dans laquelle nous avons pu découvrir la souplesse et la richesse des gabarits gérés avec jinja2, ainsi que la facilité d'utilisation de leaflet.
Désormais, dans notre flux de travail, nos répertoires sont organisé ainsi :
content + gpx : les fichiers de trace + images : les photos que l'on veut afficher sur notre blog fichierXX.md : les billets output : notre site web (généré par pelican) theme + pelican-blue : le thème choisi + static + css + leaflet + leaflet-gpx + templatesEt la rédaction de nos billets consiste à :
- ajouter le fichier gpx de notre trace dans les entêtes
- ajouter les informations sur chaque photo que l'on veut voir (toujours dans les entêtes)
- écrire notre billet normalement (en y ajoutant éventuellement d'autres photos ou des ancres de navigation)
Cette dépêche démontre qu'il est possible d'avoir, avec les outils actuels, un rendu intéressant pour partager ses sorties. Et totalement utilisable en auto-hébergement.
Les outils utilisés sont très personnalisables et je vous invite à lire leurs documentations ou à parcourir leurs extensions respectives et de vous les approprier selon votre usage.
Malheureusement, la solution présentée ne conviendra qu'à une minorité d'utilisateurs. En effet, elle se base sur des éléments qui sont le plus souvent rendus invisibles (site web, transfert de fichiers, métadonnées) et elle est inutilisable sur téléphone.
Télécharger ce contenu au format EPUBCommentaires : voir le flux Atom ouvrir dans le navigateur
Netvibes.com au rancart, Pétrolette au rendez-vous
« J'étais tranquille j'étais peinard / je réparais ma mobylette » / la nouvelle a surgi le soir / un truc pas vraiment super-chouette… » Eh oui, le couperet est tombé, les utilisateurs de l'agrégateur de flux Web Netvibes.com ont reçu le 15 avril un courriel de Dassault Systèmes leur annonçant que leur agrégateur préféré aller se désagréger définitivement dans l'atmosphère le 2 juin 2025 à midi, avec toutes leurs données, tel un Starship numérique. Si l'on en croit le début du message, cela est lié au développement d'un nouveau service de l'entreprise nommé 3D UNIV+RSES, avec plein d'IA et tout et tout. Le courriel d'avertissement indique certes comment sauvegarder ses données, mais « et maintenant, Papa / C'est quand qu'on va où ? »
- lien nᵒ 1 : Renaud : laisse béton, place de ma mob
- lien nᵒ 2 : Entrée « Pétrolette » dans le dictionnaire TLFi
- lien nᵒ 3 : Entrée « Pétrolette » dans Wikipédia
- lien nᵒ 4 : Blog de Pétrolette
- Good vibrations 2.0 ou le cubisme informationnel
- J'ai rencard avec Pétrolette
- Retour d'expérience
- Prêts pour l’équipée sauvage ?
Netvibes.com, lancé par une start-up en 2005 et racheté par Dassault Systèmes en 2012, était un lecteur en ligne permettant d'afficher les flux RSS ou Atom dans des petits cadres qu'on pouvait regrouper dans des onglets thématiques. Chaque cadre était configurable (longueur, affichage d'images ou non…) et déplaçable facilement. Les flux se mettaient automatiquement et régulièrement à jour. On pouvait aussi ajouter de petites applications (listes de choses à faire, accès courriels, accès à différents réseaux sociaux, etc.). Wikipedia décrit Netvibes.com comme « un portail Web personnalisable. Représentatif de ce qu'on appelle le Web 2.0 ». En tout cas, c'était un très bon outil de veille que j'utilisais tous les jours depuis belle lurette.
Lancé en 1990, donc à peu près en même temps que le World Wide Web, le Courrier international nous permettait d'avoir accès à une pluralité de points de vue issus des journaux du monde entier. Un agrégateur de flux, c'est un peu l'équivalent informatique. Il permet un véritable cubisme informationnel. Avoir un onglet News agrégeant des flux de journaux d'horizons politiques différents et de plusieurs pays, c'est échapper à la bulle informationnelle, à la ségrégation sociale créée par les grands réseaux sociaux commerciaux. Car observer depuis le point de vue d'autrui est un bon exercice, même si ça peut parfois être désagréable comme du poil à gratter. Enfin, avec un agrégateur, l'algorithme c'est vous : votre œil survole l'ensemble des titres et capte au vol ce qui l'intéresse ou le surprend.
J'ai rencard avec PétroletteL'outil libre qui se rapproche le plus de Netvibes.com est Pétrolette, « la page d'actus qui ne sait rien de toi », développée par YPhil en JavaScript. Comme son nom l'indique, Pétrolette n'est pas un gros SUV qui fait tout, même le café, mais une application libre qui essaie de faire au mieux une seule chose : afficher des flux Web dans des cadres classés dans des onglets. Donc disons le tout de suite, il faut oublier les éventuelles autres applications que vous utilisiez dans Netvibes. D'après son CHANGELOG, Pétrolette est en version 1.7 depuis l'été 2023. Le GitLab de Pétrolette est indiqué comme étant un miroir de son Framagit mais est en fait plus à jour, la dernière activité remontant à Noël 2024. C'est là que le développement se passe.
D'après le compte Mastodon de Pétrolette, suite à des problèmes d'hébergement, l'instance principale est depuis décembre 2024 https://petrolette.onrender.com/ bien que celle-ci soit considérée comme temporaire. Les plus admin pourront bien sûr héberger leur propre instance, soit en local soit sur le Web, par exemple sur https://place.de.ma.mob/ si le domaine n'est pas déjà réservé.
Procédure migratoirePar défaut, quand on va sur l'instance principale, qui est une instance partagée, on a un certain nombre d'onglets pré-remplis, avec en tout plus de trois cents flux. On peut les personnaliser (ce sera stocké en local), mais ce qui nous intéresse ici, c'est migrer de Netvibes à Pétrolette. Voici la procédure :
- Dans Netvibes.com, sauvegarder ses données en allant dans « Compte > Sauvegarder vos données », choisir le tableau de bord, cliquer sur Exporter (fichier XML).
- Dans Pétrolette, supprimer tous les onglets par défaut (croix rouges), importer le XML avec « Flux > Ouvrir ».
- Tous les onglets et flux sont récupérés. Le titre d'un flux apparaîtra quand on clique sur son icône pour le déployer.
- Déplier et configurer chaque flux (mais on devrait éventuellement aussi pouvoir travailler à partir du .conf pour réduire ce travail fastidieux).
La configuration est stockée localement sur l'ordinateur et non pas en ligne (on n'a donc pas de compte Pétrolette, donc elle « ne sait rien de toi », elle ne sait pas ce que tu lis). On peut l'exporter dans un fichier .conf au format JSON et l'importer sur un autre PC pour avoir la même configuration.
Synchronisation ?Mais une telle synchronisation manuelle n'est pas idéale et l'application peut utiliser le protocole remoteStorage pour pouvoir partager la même configuration sur plusieurs PC, et en particulier vers l'application 5apps. D'après l'aide, l'instance principale de Pétrolette ne gère que 5Apps (mais le menu affiche également des icônes pour Dropbox et Google Drive, qu'on devrait donc pouvoir utiliser si on héberge sa propre instance).
On peut s'enregistrer sur 5apps à partir d'un compte GitHub, Bitbucket, GitLab.com ou en se créant un compte (adresse email, identifiant, mot de passe). 5apps vous fournit une « adresse utilisateur » du type login@5apps.com. On peut alors aller dans le menu de Pétrolette, cliquer sur remoteStorage et entrer l'adresse utilisateur pour faire la connexion. Il n'y a plus qu'à autoriser Pétrolette à y accéder et faire de même sur tous vos PC. Pour cela, sur chaque machine, connectez-vous à votre compte 5apps puis dans la liste des « Connected Apps », cliquez sur le lien petrolette.onrender.com, dont l'URL est du type https://5apps.com/rs/oauth/token/123d3215c5484b9a78987e8/launch_app.
Nouveaux développementsÇa c'est la théorie, dans la pratique la synchronisation semble problématique, avec un fonctionnement très capricieux, et après discussion avec l'auteur il pourrait bien s'agir d'un bug où l'application s'emmêlerait les pinceaux entre stockage local et stockage distant. C'est la mauvaise nouvelle. La bonne nouvelle (scoop !) c'est que ça pourrait être résolu dans une future Pétrolette 2 à laquelle réfléchit l'auteur !
Voilà une bonne raison de réfléchir à l'invitation à faire un don au projet Pétrolette dans la fenêtre pop-up qui surgit de temps en temps. Il est en effet possible de faire un don sur Liberapay ou de prendre un abonnement sur Ko-fi : à partir de 1 €/mois le pop-up disparaît. Au-delà, on peut demander à l'auteur de créer un nombre plus ou moins important de flux RSS pour des sites qui n'en proposent normalement pas. Rappelons-nous que dans surveillance://, Tristan Nitot nous avertissait sur notre fâcheuse tendance à aimer la gratuité.
Retour d'expérienceCommençons par les points négatifs, ce qui nous permettra de finir sur le positif !
Points négatifs- Lenteur pour mettre à jour les flux : quand on affiche sa page Pétrolette, tous les flux sont mis à jour simultanément, c'est-à-dire même dans les onglets qui ne sont pas affichés.
- Pas de mise à jour périodique des flux. On peut certes les mettre à jour individuellement en cliquant sur une icône. Mais malheureusement, recharger la page avec F5 permet certes de mettre à jour tous les flux mais nous remet systématiquement sur le premier onglet. Pétrolette 2 proposera peut-être des fonctionnalités pour faciliter les mises à jour des flux.
- N'affiche pas l'heure de parution des actualités, contrairement à Netvibes. Mais la date et l'heure sont indiquées dans la fenêtre d'aperçu quand on survole un titre.
- Les aperçus du texte qui apparaissent au survol de la souris sont plus longs qu'avec Netvibes, et même parfois très longs, ce qui permet d'avoir un bon aperçu du contenu avant un éventuel clic, voire même de s'en passer.
- La hauteur (en pixels) des cadres peut être réglée plus finement qu'avec Netvibes (où seules trois hauteurs standards étaient disponibles). Cela peut d'ailleurs être utilisé pour augmenter la distance verticale entre deux cadres, ceux-ci étant par défaut collés de façon un peu compacte.
- Les titres longs apparaissent en entier sur plusieurs lignes, alors qu'ils sont coupés dans Netvibes. Cela peut-être un avantage mais parfois aussi un défaut avec certains sites qui proposent des titres à rallonge (du genre trois lignes sur Developpez.com !) que l'oeil a du mal à lire au vol.
- Le menu principal propose de déposer un marque-page dans la barre du navigateur. Il contient un script qui d'un clic ajoutera le site de l'onglet courant dans votre Pétrolette.
- Le champ de recherche permet de chercher un terme dans tous les titres de l'ensemble des onglets. Les zones où il est trouvé apparaissent encadrées en jaune.
« Dès que les vents tourneront nous nous en allerons… » Il le faudra bien, le 2 juin tout s'arrête. Et donc tout recommence. On a maintenant toutes les réponses à la question synthétique et sympathique « c'est quand qu'on va où ? » Quand ? On le sait depuis le début et on l'a répété, c'est le 2 juin ! Où ? On espère y avoir apporter une réponse dans cette dépêche.
Et puis à l'heure où les algorithmes profiteurs des réseaux sociaux commerciaux tendent à enfermer l'utilisateur dans sa bulle informationnelle au seul motif d'optimiser les profits et où les moteurs IA sapent la sérendipité du Web, se balader humblement en mobylette RSS devient une véritable mesure d'hygiène mentale. En plus c'est libre.
Figure 1 - « Quand j’me balade en mobylette / On dirait l’équipée sauvage ». Ouais, ça carbure librement avec « La Pétrolette » (Duncan & Suberbie, 1895 - 1898) [source : Wikimedia, domaine public].
Télécharger ce contenu au format EPUBCommentaires : voir le flux Atom ouvrir dans le navigateur
Agenda du Libre pour la semaine 23 de l'année 2025
Calendrier Web, regroupant des événements liés au Libre (logiciel, salon, atelier, install party, conférence), annoncés par leurs organisateurs. Voici un récapitulatif de la semaine à venir. Le détail de chacun de ces 49 événements (France: 41, Québec: 4, internet: 3, Belgique: 1) est en seconde partie de dépêche.
- lien nᵒ 1 : April
- lien nᵒ 2 : Agenda du Libre
- lien nᵒ 3 : Carte des événements
- lien nᵒ 4 : Proposer un événement
- lien nᵒ 5 : Annuaire des organisations
- lien nᵒ 6 : Agenda de la semaine précédente
- lien nᵒ 7 : Agenda du Libre Québec
-
- [FR Martigues] Culture WEB - Le lundi 2 juin 2025 de 17h00 à 19h00.
- [FR Saint-Nazaire-en-Royans] Permanence Rézine Cambuse - Le lundi 2 juin 2025 de 17h30 à 19h30.
- [FR Annecy] Rencontre publique avec Yauternet - Le lundi 2 juin 2025 de 19h00 à 20h00.
- [FR Grenoble] L’Atelier de Bidouille (ABIL) - Le lundi 2 juin 2025 de 19h00 à 21h00.
- [internet] Émission «Libre à vous!» - Le mardi 3 juin 2025 de 15h30 à 17h00.
- [FR Montpellier] Atel'libre | Modélisez et animez vos images 3D avec Blender - Le mardi 3 juin 2025 de 17h00 à 19h00.
- [FR Chaumont] Permanence associative - Le mardi 3 juin 2025 de 18h00 à 20h00.
- [FR Grenoble] Permanence Rézine - Le mardi 3 juin 2025 de 19h00 à 20h00.
- [FR Croix] Atelier Local-Low-Tech - Le mardi 3 juin 2025 de 19h00 à 22h00.
- [internet] Permanence numérique (visio) - Le mardi 3 juin 2025 de 20h00 à 21h30.
- [CA-QC Montréal] Rencontres-Linux Québec - Le mardi 3 juin 2025 de 17h30 à 21h30.
- [CA-QC Montréal] InstallFest à Insertech - Le mercredi 4 juin 2025 de 13h00 à 19h00.
- [CA-QC Lévis] Installe-o-thon Linux - Le mercredi 4 juin 2025 de 15h00 à 19h00.
- [FR Le Blanc] Ateliers “Libres” de Linux - Le mercredi 4 juin 2025 de 14h00 à 17h00.
- [FR Agen] Permanence d’aGeNUx - Le mercredi 4 juin 2025 de 17h30 à 19h30.
- [FR Beauvais] Sensibilisation et partage autour du Libre - Le mercredi 4 juin 2025 de 18h00 à 20h00.
- [internet] Logiciels Libres et Auto-édition (visio) - Le mercredi 4 juin 2025 de 19h00 à 21h00.
- [FR Orchies] Mercredis Linux - Le mercredi 4 juin 2025 de 19h30 à 23h30.
- [FR Gaillac] Repair café - Le jeudi 5 juin 2025 de 10h00 à 13h00.
- [FR Angers] Rencontre mensuelle OpenStreetMap - Le jeudi 5 juin 2025 de 18h00 à 19h00.
- [FR Chambéry] Repair du libre - Le jeudi 5 juin 2025 de 18h00 à 20h00.
- [FR Béziers] Permanence | GNU/Linux et Logiciels Libres - Le jeudi 5 juin 2025 de 18h30 à 21h00.
- [FR Paris] Rencontre livresque avec Isabelle Collet autrice du livre Le numérique est l’affaire de toutes - Le jeudi 5 juin 2025 de 18h30 à 20h30.
- [FR Paris] Rencontre livresque avec Isabelle Collet autrice de l’ouvrage « Le numérique est l’affaire de toutes » - Le jeudi 5 juin 2025 de 18h30 à 20h30.
- [FR Lyon] Jeudi Programmation - Le jeudi 5 juin 2025 de 19h00 à 21h00.
- [FR Cénac] Permanence numérique - Le jeudi 5 juin 2025 de 20h00 à 23h00.
- [FR Chambery] Forum Alpinux - Le jeudi 5 juin 2025 de 20h00 à 22h00.
- [CA-QC Montréal] Réunion du CA de FACiL - Le jeudi 5 juin 2025 de 18h00 à 20h00.
- [FR Milly-sur-Thérain] Sensibilisation et partage autour du Libre - Le vendredi 6 juin 2025 de 17h00 à 19h00.
- [FR Orléans] Initiation au langage Python - Le vendredi 6 juin 2025 de 17h00 à 19h00.
- [BE Antoing] Atelier Linux - Le vendredi 6 juin 2025 de 18h00 à 20h00.
- [FR Brest] L’hébergement Web sans Data Center avec Deuxfleurs - Le vendredi 6 juin 2025 de 18h30 à 20h00.
- [FR Bidart] Docu-Blabla sur le logiciel libre - Le vendredi 6 juin 2025 de 19h00 à 19h00.
- [FR Marseille] Apéro mensuel Aïolibre et PLUG - Le vendredi 6 juin 2025 de 19h00 à 23h00.
- [FR Annecy] Réunion hebdomadaire AGU3L Logiciels Libres - Le vendredi 6 juin 2025 de 20h00 à 23h59.
- [FR Contamine sur Arve] Bidouille Informatique - Le samedi 7 juin 2025 de 09h00 à 12h00.
- [FR Vanves] Portes ouvertes - Installations - Dépannages - Le samedi 7 juin 2025 de 09h30 à 18h00.
- [FR Courbevoie] Atelier SERVEUR Domain Name SYSTEM DNS - Le samedi 7 juin 2025 de 09h30 à 17h30.
- [FR Villeurbanne] Editathon Wikipédia squats & habitats collectifs - Le samedi 7 juin 2025 de 10h00 à 18h00.
- [FR Aix-en-Provence] Samedi Libre - Le samedi 7 juin 2025 de 10h00 à 17h00.
- [FR Bégard] Permanence infothema à Bégard (Groupe 1) - Le samedi 7 juin 2025 de 10h00 à 12h00.
- [FR Ivry sur Seine] Cours de l’École du Logiciel Libre - Le samedi 7 juin 2025 de 10h30 à 18h30.
- [FR Wintzenheim] Réunion du Club Linux - Le samedi 7 juin 2025 de 13h00 à 19h00.
- [FR Brasparts] Install-party Linux - Le samedi 7 juin 2025 de 14h00 à 18h00.
- [FR Saint-Cyr-l’École] Permanences logiciels libres - pc et smartphones - Le samedi 7 juin 2025 de 14h00 à 17h00.
- [FR Paris] Premier Samedi du Libre - Le samedi 7 juin 2025 de 14h00 à 18h00.
- [FR Juvisy-sur-Orge] Permanence GNU/Linux - Le samedi 7 juin 2025 de 14h30 à 17h00.
- [FR Nantes] Permanence Linux-Nantes - Le samedi 7 juin 2025 de 15h00 à 18h00.
- [FR Quimper] Permanence Linux Quimper - Le samedi 7 juin 2025 de 16h00 à 18h00.
Les Espaces publics numériques (EPN) vous proposent une séance pour découvrir l’actualité du net, mais également bien d’autres sujets !
Présentation
« Fake news », actualités, culture geek, réseaux sociaux, darknet, cryptomonnaie, l’univers du « libre », l’écologie numérique, l’impact du digital sur l’environnement, les réflexes à adopter… Une séance pour décrypter toute l’actualité du numérique en compagnie des médiateurs numériques.
En savoir plus
Cette activité fait partie de l’ensemble des ateliers collectifs proposés par les Espaces Publics Numériques (EPN) de la ville de Martigues.
Ces ateliers vont vous permettre de découvrir dans la convivialité des outils et des usages numériques utiles en fonction de votre niveau.
Il s’agit d’ateliers collectifs encadrés par des médiateurs numériques.
- Nos espaces sont labellisés SUD LABS par la Région Sud Provence-Alpes-Côte-d’Azur.
- inscription possible sur https://logen.ville-martigues.fr
Retrouvez-nous sur Facebook
EPN Maison de la Formation et Jeunesse, EPN Maison de la Formation et Jeunesse, quai Lucien Toulmond, Martigues, Provence-Alpes-Côte d’Azur, France
https://www.ville-martigues.fr/services-en-ligne/martigues-numerique/espaces-publics-numeriques
Rézine est un fournisseur d’accès à Internet qui défend une vision politique des technologies et des réseaux. Pour cela, Rézine met notamment en œuvre un accès Internet local, à prix juste, respectant la neutralité du Net, piloté par ses usagères et usagers, dans une démarche émancipatrice.
Nous fournissons Internet via la fibre, via wifi (radio) et proposons également des VPN.
Par ailleurs fournir une critique du numérique, et en particulier des réseaux, est une activité inhérente à notre activité de fournisseur d’accès à Internet, que nous avons affirmée dans l’objet de la structure. Nous inscrivons notre démarche dans une tradition d’éducation populaire, qui vise à contribuer à l’émancipation des personnes, dans leur rapport aux technologies et aux réseaux, quel que soit leur niveau de connaissance.
Venez nous rencontrer pour discuter, devenir membre, poser vos questions sur la fibre, sur Internet, ou juste par curiosité!
- Les BonBONs du Vercors, 1 rue des Mariniers, Saint-Nazaire-en-Royans, Auvergne-Rhône-Alpes, France
- https://www.rezine.org
- fai, connectivité, fibre, ftth, radio, rézine, éducation-populaire, permanence
Venez nous rencontrer le premier lundi de chaque mois jusqu’en juillet. Nous vous attendons pour vous aider à utiliser nos services libres en ligne. Pour vous expliquer comment utiliser notre nuage Nextcloud et ses applications.
Nous vous attendons aussi si vous voulez contribuer, modestement ou plus largement à notre déploiement sur le bassin annécien.
- Petit Vernay - arrière du batiment - Cran Gevrier, Petit Vernay - arrière du batiment - Cran Gevrier, 23 avenue Germain Perreard, Annecy, Auvergne-Rhône-Alpes, France
- https://yauter.net
- services, libre, yauternet, numerica, nextcloud
L’Atelier de Bidouille Informatique Libre (ABIL) est ouvert à tous·tes les personnes qui n’arrivent pas à résoudre des problèmes avec leur ordinateur:
- trouver et installer un logiciel
- utiliser et/ou apprendre à utiliser un logiciel
- réinstaller ou installer un système d’exploitation
- monter un ordinateur
- réparer un ordinateur
- créer et/ou mettre à jour un site oueb
- … ou d’autres choses sur un ordinateur
L’atelier permet de résoudre son problème en compagnie de bénévoles et des participants qui ne sont ni expert·e·s en informatique, ni réparateur·rice·s, mais qui ont l’habitude de la “bidouille” et seront là pour vous aider à trouver l’information là où elle se trouve (si elle existe).
Pendant les ateliers, l’ABIL met à disposition du matériel: postes de travail, unités centrales à remonter ou installer, écrans, claviers, souris, pièces détachées, connexion Internet…
Attention, l’ABIL ne met à disposition que des systèmes d’exploitation et des logiciels libres. Si vous souhaitez résoudre un problème sur un système ou logiciel non-libre, apportez votre machine pour participer à l’atelier, muni des licences du système d’exploitation et/ou des logiciels concernés.
- Centre de loisirs enfance et famille, Centre de loisirs enfance et famille, 2 rue Henri Ding, Grenoble, Auvergne-Rhône-Alpes, France
- http://www.abil-grenoble.org
- abil, atelier, bidouille, logiciel, logiciels-libres
L’émission Libre à vous! de l’April est diffusée chaque mardi de 15 h 30 à 17 h sur radio Cause Commune sur la bande FM en région parisienne (93.1) et sur le site web de la radio.
Le podcast de l’émission, les podcasts par sujets traités et les références citées sont disponibles dès que possible sur le site consacré à l’émission, quelques jours après l’émission en général.
Les ambitions de l’émission Libre à vous!
Découvrez les enjeux et l’actualité du logiciel libre, des musiques sous licences libres, et prenez le contrôle de vos libertés informatiques.
Donner à chacun et chacune, de manière simple et accessible, les clefs pour comprendre les enjeux mais aussi proposer des moyens d’action, tels sont les objectifs de cette émission hebdomadaire.
L’émission dispose:
- d’un flux RSS compatible avec la baladodiffusion
- d’une lettre d’information à laquelle vous pouvez vous inscrire (pour recevoir les annonces des podcasts, des émissions à venir et toute autre actualité en lien avec l’émission)
Radio Cause Commune, Radio Cause Commune, Internet
C’est avec un grand plaisir que nous vous annonçons cette réunion du groupe Blender à Montpellier. (Le premier mardi de chaque mois).
Rencontrer le groupe local d’utilisateurs du logiciel de modélisation 3D Blender pour échanger et actualiser ses connaissances sur ce logiciel à la fois très puissant et riche en potentialités. Attention, il ne s’agit pas d’ateliers d’initiation à Blender.
Les thèmes que nous vous proposons d’aborder :
Le programme :
- Initiation à Blender
- les activités du Groupe Blender
- premiers pas dans l’univers 3d
- prise en main des outils de base
- inscriptions aux formations Blender
Blender est un logiciel libre de modélisation, d’animation et de rendu en 3D. Cette réunion se veut pour partager du temps autour du projet, s’entre-aider, s’émuler, s’amuser, produire, ou tout simplement discuter. Cette réunion s’adresse à toutes les personnes débutantes, confirmées et même curieuses de l’image en 3D.
Ces rencontres du groupe Blender ont lieu le premier mardi de chaque mois de 17h00 à 19h00.
Sur inscription | GPS 43.60859/3.89329
- La Fabrique, médiathèque Émile Zola, La Fabrique, médiathèque Émile Zola, 218 boulevard de l’Aéroport international, Montpellier, Occitanie, France
- https://montpellibre.fr
- montpel-libre, logiciels-libres, blender, 3d, image, atelier-libre
Permanence associative du Schmilblik Numérique.
L’occasion de s’entraider dans nos usages des solutions libres au sein du Schmilblik, tiers-lieu dédié à la culture et la création artistique, à Chaumont.
Des boissons chaudes, de la bienveillance et beaucoup de convivialité.
Tous les niveaux techniques sont les bienvenus, de parfait·e débutant·e à expert·e chevronné·e.
- Schmilblik, Schmilblik, 49 rue Lévy Alphandéry, Chaumont, Grand Est, France
- https://schmilblik.fr
- ba-sik-asso, permanence, entraide, schmilblik
Rézine est un fournisseur d’accès à Internet qui défend une vision politique des technologies et des réseaux. Pour cela, Rézine met notamment en œuvre un accès Internet local, à prix juste, respectant la neutralité du Net, piloté par ses usagères et usagers, dans une démarche émancipatrice.
Nous fournissons Internet via la fibre, via wifi (radio) et proposons également des VPN.
Par ailleurs fournir une critique du numérique, et en particulier des réseaux, est une activité inhérente à notre activité de fournisseur d’accès à Internet, que nous avons affirmée dans l’objet de la structure. Nous inscrivons notre démarche dans une tradition d’éducation populaire, qui vise à contribuer à l’émancipation des personnes, dans leur rapport aux technologies et aux réseaux, quel que soit leur niveau de connaissance.
Venez nous rencontrer pour discuter, devenir membre, poser vos questions sur la fibre, sur Internet, ou juste par curiosité!
- Collectif Voisin, place André Charpin, Grenoble, Auvergne-Rhône-Alpes, France
- https://www.rezine.org
- fai, connectivité, fibre, ftth, radio, rézine, éducation-populaire, permanence
L’Association Club Linux Nord Pas-de-Calais est présent tous les premiers mardis du mois aux Petites Cantines, à Croix.
Au cours de ces séances, nous vous proposons d’installer le système d’exploitation libre Linux et/ou les logiciels libres que vous utilisez sur votre ordinateur.
Si votre ordinateur est récent et que vous vous voulez vous donner les moyens de maîtriser les informations qui y entrent et en sortent, ou si votre ordinateur devient poussif…
Pensez à nous rendre visite, c’est gratuit et on vous donnera toutes les clés pour que vous puissiez faire le choix qui vous convient
Un serveur musical pour mon salon
Aujourd’hui, on va mettre en place un serveur musical pilotable à distance en utilisant MPD. Il sera notamment capable de jouer de la musique stockée dessus ou des radios Internet. Il sera aussi capable de se comporter comme une enceinte Bluetooth.
On va parler de récup de vieux matos, de Debian, MPD, PipeWire, Samba, d’agent Bluetooth, de systemd (-analyze, -logind), de Powertop et de vbetool.
Cet article au ton très « administration système » s’adresse à :
- des gens qui voudraient mettre en place un système plus ou moins similaire, même pour faire autre chose dans le même esprit (en mode tutoriel) ;
- des gens qui aiment les détails techniques et voir les trucs cools qu’on peut faire avec les logiciels libres ;
- toute autre personne curieuse pour d’autres raisons.
Il est probablement trop technique pour quelqu’un qui ne manipule pas la ligne de commande, qui pourra peut-être malgré tout, avec suffisamment de motivation, se laisser porter par la démarche.
- lien nᵒ 1 : Debian
- lien nᵒ 2 : Using a Raspberry Pi as a Bluetooth speaker with PipeWire
- lien nᵒ 3 : Music Player Daemon
- lien nᵒ 4 : MPD Clients
- lien nᵒ 5 : M.A.L.P sur F-Droid
- lien nᵒ 6 : Cantata
- lien nᵒ 7 : Samba
- lien nᵒ 8 : Command-Line Methods for Turning Monitor on or off in Linux
- lien nᵒ 9 : How do I run a single command at startup using systemd?
- lien nᵒ 10 : Writing a systemd service to be executed at resume
- lien nᵒ 11 : How to manage wireless connections using iwd on Linux
- lien nᵒ 12 : How do I make Powertop changes permanent?
- lien nᵒ 13 : rsgain
- lien nᵒ 14 : Using MPD for ReplayGain
- lien nᵒ 15 : Guide: Getting Wireplumber to work without D-Bus
- Introduction
- Installation standard minimaliste de Debian
- Gains énergétiques potentiels
- MPD : Music Player Deamon
- Samba pour déposer les morceaux (et les playlists)
-
Récepteur Bluetooth
- Garder une session utilisateur active
- Installer PipeWire et les choses nécessaires
- Installer un agent Bluetooth qui accepte toutes les connexions audio sans vérifications avec code
- Adapter MPD (et Samba) pour utiliser PipeWire
- Permettre à PipeWire de configurer sa priorité
- Évitez les flux Wifi 2,4 GHz
- Note sur l’utilisation des ressources
- Conclusion et améliorations possibles
Note de lecture : cette dépêche est très détaillée, je vous conseille de passer les sections qui vous intéressent moins.
MotivationDans mon salon, j’ai des petites enceintes toutes bêtes qui sonnent plutôt bien. Mettre de la musique implique de s’embêter à brancher un ordinateur, sur lequel je suis le seul avoir le contrôle. Ce serait bien d’avoir un système prêt à l’emploi et que tout le monde peut contrôler.
Objectifs- Pas d’achat : on fait avec de la récup
- Peu gourmand en énergie
- Silencieux (à part la musique, bien sûr)
- Facile à utiliser pour une personne non technique
- Pouvoir mettre de la musique sans que ça soit pénible, en utilisant ma bibliothèque musicale locale, ou des radios internet
- Pouvoir laisser n’importe qui se connecter en Bluetooth et lancer sa propre musique
Nous allons, ensemble, remplir ces objectifs. On va rentrer dans les détails, qui peuvent être utiles dans d’autres applications, et parce que je sais que certaines personnes ici aiment ça, bande de geeks :-)
Matériel à disposition- des enceintes parfaitement fonctionnelles mais sans fonctionnalité Bluetooth
- un appareil style netbook du début des années 2010 (dans mon cas, c’est une vieille tablette Airis Kira Slimpad plus vraiment adaptée au web moderne, dotée d’un processeur Intel Atom un peu lent, d’un peu de stockage assez lent, d’un Wifi plutôt lent, du Bluetooth, d’1 Giga de mémoire vive)
Note sur les interférences Wifi et Bluetooth. Le Wifi de cette tablette est en 2,4 GHz, pareil que le Bluetooth. Tout échange wifi cause des perturbations sur le Bluetooth et tout transfert intensif rend le Bluetooth inutilisable. Du grand classique. Un Wifi 5, 6 ou 7 aurait été appréciable. Il serait possible d’utiliser une carte Wifi USB, mais je n’en ai pas donc on fera sans.
Ce qu’on va faire dans les grandes lignes- Installer une Debian minimale
- La configurer pour qu’elle soit accessible par le réseau, la plus rapide et légère possible en utilisation mémoire, en temps de démarrage et en consommation énergétique
- Installer et configurer MPD
- Installer et configurer Samba
- Configurer en mode « enceinte Bluetooth »
Par souci de concision, on ne va pas détailler l’installation de Debian, il existe d’autres ressources au besoin.
En résumé :
- Debian classique en 32 bits (ça consomme moins de mémoire que du 64 bits)
- j’ai laissé l’installateur faire le partitionnement (une partition principale en ext4, et une partition swap de 1G)
- j’ai ajouté l’option noatime sur la partition principale pour éviter d’écrire inutilement lors des accès, ce qui use le SSD et ralentit le système (d’autant que le SSD est lent)
- lors de l’étape Tasksel, choisir console, serveur ssh et utilitaires standard, et en particulier pas d’environnement de bureau
- on installe sudo et on ajoute l’utilisateur au groupe sudo, ou alors on se donne accès à root en ssh avec une clé SSH
- on installe iwd (le remplaçant moderne de wpa_supplicant, supposé plus performant et plus stable permettant également de se passer de NetworkManager assez facilement) et on connecte l’appareil en wifi avec
- on identifie et désactive ou on désinstalle le superflu avec systemd-analyze critical-chain et systemd-analyze blame (typiquement, si vous avez installé NetworkManager, ModemManager a peut-être été installé alors que vous n’avez pas de modem à gérer)
- on peut configurer le menu de Grub pour moins attendre au démarrage
Note : sur cette tablette, l’installateur Debian n’arrive pas à se connecter en Wifi, j’ai donc utilisé la version DVD (le premier suffit).
Gains énergétiques potentiels Éteindre l’écranL’écran est potentiellement une des plus grosses sources de consommation électrique. On n’en a pas besoin, donc on va l’éteindre au démarrage et à la sortie de veille.
Pour cela, on va installer vbetool (sources : outils pour éteindre l’écran, lancer une commande au démarrage, lancer une commande après la veille):
sudo apt install vbetool cat << EOF | sudo tee /etc/systemd/system/screenoff.service [Unit] Description=Screen off After=suspend.target [Service] ExecStart=vbetool dpms off [Install] WantedBy=multi-user.target suspend.target EOFAttention : ça peut compliquer grandement l’usage de l’appareil, on peut vouloir appliquer un délai avant extinction pour se faciliter la vie.
Powertop pour améliorer la consommation électriquePowertop permet de voir ce qui utilise le CPU et les diverses ressources, et d’ajuster un peu les paramètres de mise en veille de différents périphériques.
On va l’installer :
sudo apt install powertopEnsuite, ça peut être cool de lancer l’outil pour constater un peu ce qui tourne et consomme des ressources, de se déplacer dans les onglets, et de tenter des trucs dans l’onglet « Tunables » :
sudo powertopSi passer tout à Good ne cause pas de problème d’instabilité évidente, alors on peut appliquer la configuration de Powertop à chaque démarrage (source) :
cat << EOF | sudo tee /etc/systemd/system/powertop.service [Unit] Description=PowerTOP auto tune [Service] Type=oneshot Environment="TERM=dumb" RemainAfterExit=true ExecStart=/usr/sbin/powertop --auto-tune [Install] WantedBy=multi-user.target EOF systemctl daemon-reload systemctl enable powertop.serviceSinon, il y a des solutions mentionnées dans la source pour désactiver certains changements (si vous observez des dysfonctionnements avec certains périphériques par exemple, et notamment si vous avez des problèmes de Wifi ou Bluetooth)
Perso, je sais que sur cette tablette, passer tout à Good fait (faisait il y a 10 ans en tout cas) qu’après un délai la première frappe sur le clavier ou le premier clic de la souris était ignoré, et aussi était nécessaire pour réveiller l’USB – clairement je m’en fiche ici, mais si votre wifi ou votre Bluetooth est en USB et que les paramètres causent une extinction après un délai, clairement ce n’est pas bon).
Bonus : Configurer le bouton power pour mettre en veilleSur ma tablette, un appui court sur le bouton power éteint la tablette (et ensuite on la rallume en appuyant 3 longues secondes). Si on souhaite qu’un appui court mette en veille l’appareil et un appui long l’éteigne, comme ça on fait un compromis énergétique supposément raisonnable pour rendre l’ensemble un poil plus pratique, c’est facile avec systemd.
Ajoutez ces deux lignes au fichier /etc/systemd/logind.conf :
HandlePowerKey=suspend HandlePowerKeyLongPress=poweroffRechargez les paramètres :
sudo systemctl restart systemd-logind MPD : Music Player DeamonOk, passons au cœur du sujet : mpd.
KésakoSimplement, c’est un lecteur de musique pilotable à distance qui est capable de :
- lire de la musique que vous mettez dans son dossier de travail ;
- lire des playlists que vous mettez dans son dossier de travail ;
- lire des flux radio, qui sont par exemple définis dans des playlists.
Entre autres.
Certains clients MPD, comme Cantata (une application Qt5 plus ou moins abandonnée mais encore dans les dépôts), sont même capables de lire de la musique sur votre serveur MPD que vous avez localement sur votre ordinateur, ou de gérer les playlists. Ça rend d’ailleurs la constitution de playlists vaguement confortable. Vous n’avez pas besoin d’écrire des playlists M3U à la main, quoi.
Les avantages sont multiples :
- c’est méga léger, une machine épuisée peut faire tourner MPD à l’aise
- si vous lisez la musique stockée sur le serveur, le réseau n’est pas engorgé
- on peut être plusieurs à contrôler la musique, ce n’est pas une personne qui contrôle tout, et on peut le faire depuis le canapé
- il existe toute une flopée de clients, il y en a pour tous les goûts pourvu que vous aimiez les logiciels abandonnés ou en ligne de commande / en ncurses (ouais, c’est quand même un problème que j’identifie et qui a largement retardé mon adoption de MPD)
- les gens non techniques apprécieront les applications mobiles telles que M.A.L.P pour gérer la musique et le volume sonore.
On va modifier sa configuration :
sudo nano /etc/mpd.confOn peut laisser les paramètres par défaut suivants :
music_directory "/var/lib/mpd/music" playlist_directory "/var/lib/mpd/playlists"Vous l’aurez compris, c’est là où on stocke les musiques et les playlists. Dans la section suivante, on verra comment rendre le dépôt de morceaux simple et convivial.
On va laisser la plupart des autres paramètres par défaut.
On va changer bind_to_address, qui est par défaut à localhost, mais on veut que n’importe quel appareil sur le réseau soit capable de s'y connecter. On va aussi explicitement mettre le port à la valeur par défaut (ce n’est probablement pas nécessaire, mais c’est ce que j’ai fait) :
bind_to_address "0.0.0.0" port "6600"On veut aussi que quand des fichiers sont changés dans les dossiers music et playlists, mpd se mette à jour tout seul pour ne pas avoir à le baby-sitter :
auto_update "yes"J’ai tenté d’activer zeroconf pour que les clients MPD puissent le trouver tout seul :
zeroconf_enabled "yes" zeroconf_name "Music Player @ %h"Mais en vrai, je n’ai pas réussi à faire fonctionner ça. En tout cas, un prérequis est d’avoir installé et activé avahi-daemon, on verra ça plus tard dans la partie Samba du coup.
Vous aurez peut-être envie de mettre un mot de passe voire de changer les permissions par défaut en décommentant et adaptant les paramètres suivants, mais c’est optionnel :
#password "password@read,add,control,admin" #default_permissions "read,add,control,admin"Ensuite, la partie critique, la sortie audio. Pour l’instant, on va dire à mpd d’utiliser Alsa directement. C’est le plus direct et le plus léger (on passera à PipeWire plus tard, pour gérer l’aspect récepteur Bluetooth)
audio_output { type "alsa" name "My ALSA Device" device "hw:0,0" # optional mixer_type "hardware" # optional # mixer_device "default" # optional mixer_control "Master" # optional mixer_index "0" # optional }Pour une de mes installations, j’ai commenté mixer_device parce que ce n’est manifestement pas la bonne valeur chez moi, et que ça marche bien sans.
Vous pouvez vous passer des autres valeurs optionnelles, mais vous n’aurez pas le contrôle du volume sonore depuis les clients MPD si vous faites ça. Vous allez donc devoir trouver les bonnes valeurs pour les paramètres mixer_*, et pour device. ainsi que mixer_control et mixer_index.
Quelques indices :
- hw:0,0 est probablement la bonne valeur pour device, et 0 pour mixer_index aussi. Vous pouvez lister vos cartes son avec aplay -L. Vous aurez peut-être besoin d’installer le paquet alsa-utils.
- la valeur de mixer_control est le nom du contrôle que vous utiliserez pour changer le volume dans alsamixer, du paquet alsamixergui que vous aurez probablement besoin d’installer.
Si vous galérez trop avec les valeurs de mixer-*, vous pouvez simplement utiliser mixer_type "software", c’est moins propre mais ça devrait faire le taf. Et sinon, vous pouvez toujours sortir l’artillerie lourde et passer directement à PipeWire.
Pour appliquer vos modifications :
systemctl enable --now mpd # À partir de Debian Trixie, mpd n’est plus activé par défaut au niveau du système systemctl restart mpd # Si MPD tournait déjàVous pouvez déboguer vos changements avec la commande suivante, qui suit les logs en temps réel :
journalctl -fu mpdVous avez plusieurs options pour essayer de lire des choses avec mpd :
- installer l’application M.A.L.P sur votre téléphone Android, ou une autre application cliente MPD, et ajouter un profil avec la bonne adresse, le bon port et le bon mot de passe ;
- installer un client comme Cantata sur votre ordinateur, avec la bonne adresse, le bon port et le bon mot de passe ;
- installer mpc directement sur le serveur. Normalement mpc play permet de lancer la lecture.
Moi, j’ai testé avec une webradio dans une playlist (/var/lib/mpd/playlists/radio-paradise-main-mix.m3u avec le contenu http://stream.radioparadise.com/ogg-192m), mais on peut aussi évidemment placer un morceau dans /var/lib/mpd/music/.
ReplayGainLe niveau sonore de mes morceaux n’est pas homogène, donc il faut sans cesse adapter le volume d’un morceau à l’autre. C’est pénible, voire inutilisable en l’état. Une solution pour ça est replay gain : on analyse et on enregistre le niveau sonore d’une piste dans ses métadonnées.
Il existe plein d’outils pour faire ça, dont https://github.com/complexlogic/rsgain
On peut le faire avant d’envoyer les fichiers sur l’appareil. Pour ma part, je l’ai fait sur la tablette, et il n’existe pas de paquet Debian 32 bits, donc je l’ai compilé :
sudo apt install cmake build-essential pkd-config git libavcodec-dev libavformat-dev libtag1-dev libebur128 libinih-dev libfmt-dev git clone --depth=1 https://github.com/complexlogic/rsgain cd rsgain mkdir build cd build cmake .. make -j2 sudo make installIl faudra s'assurer que les morceaux au format Opus sont étiquetés avec le tag R128_TRACK_GAIN et pas REPLAYGAIN_TRACK_GAIN, parce que c'est ce que MPD s’attend à avoir. Pour ça, on va convaincre rsgain de suivre les standards (que certains lecteurs de musiques ne comprennent pas) en créant un preset qui contient :
[Opus] OpusMode=sMes morceaux ne sont pas organisés par albums, donc je désactive l’analyse par album. Je vais donc partir du preset no_album :
mkdir -p ~/.config/rsgain/presets; cat << EOF > ~/.config/rsgain/presets/no_album_standard_opus.ini [Global] TagMode=i Album=false TargetLoudness=-18 ClipMode=p MaxPeakLevel=0.0 TruePeak=false Lowercase=false ID3v2Version=keep PreserveMtimes=false DualMono=false OpusMode=s EOFEnsuite, on peut le rsgain sur le dossier de musiques avec ce preset. Mes morceaux ne sont pas organisés par albums, donc je désactive l’analyse par album.
rsgain easy -p no_album_standard_opus -m MAX /var/lib/mpd/musicNote : l'option --skip-existing permet d'ignorer les fichiers déjà taggés :
rsgain easy --skip-existing -p no_album_standard_opus -m MAX /var/lib/mpd/musicAvec cette option, on peut exécuter cette tâche régulièrement, par exemple dans un cron, pour calculer le ReplayGain pour les nouveaux fichiers. Pour la première exécution, il vaut certainement mieux ne pas l’utiliser, sinon, si vous aviez déjà des fichiers qui avaient l'information, il se peut que le résultat ne soit pas uniforme.
Il faut dire à MPD d’utiliser le ReplayGain dans /etc/mpd.conf :
replaygain "track"Vous aurez peut-être besoin de jouer avec les autres paramètres liés au volume et au ReplayGain.
Voici les miens :
# Ce paramètre définit la pré-amplification à appliquer pour les morceaux qui ont l'information du ReplayGain replaygain_preamp "0" # Ce paramètre définit la pré-amplification à appliquer pour les morceaux qui ne l'ont pas replaygain_missing_preamp "0" # Faut-il interdire à MPD de dépasser le niveau original d'amplification en appliquant le ReplayGain? replaygain_limit "no" # Faut-il permettre à MPD d'ajuster le volume pendant la lecture pour normaliser ? volume_normalization "no"Un autre paramètre qu’on peut régler, c'est la manière dont MPD règle le volume dynamiquement pour ReplayGain. Dans votre bloc audio_output, vous pouvez ajouter replay_gain_handler et la valeur "software" (c'est la valeur par défaut) ou "mixer". En théorique, les traitements software dégradent le son, mais en pratique, avec "mixer", je tombe sur ce bug qui met le volume à 100% après chaque changement de piste.
Note : je ne suis pas encore convaincu d’avoir réussi à trouver les réglages parfaits, n’hésitez pas à expérimenter.
Les clients MPDÀ ce stade, vous devriez avoir un serveur MPD fonctionnel et configuré. Si applicable, vous pouvez commencer à suggérer aux gens de votre foyer d’installer l’application M.A.L.P sur leur appareil Android ; elle est libre et disponible sur F-Droid et sur le Play Store. Avec un peu de chance, votre enthousiasme était communicatif et c’est eux qui vous demanderont :-)
Pour les autres types d’appareils, vous allez devoir faire vos recherches vous-même je n’ai pas étudié les options sous Windows, Mac ou iPhone, mais il y en a. Pour Linux, j’ai essayé Cantata. Il me convient, si ce n’est qu’il a l’air un peu abandonné, et il a une interface certes conviviale, mais quand même un peu brute. Il existe des widgets qui s’intègrent aux différents environnements de bureaux pour les différents systèmes d’exploitation, je n’ai pas exploré. Le site de MPD propose une liste de clients, et le wiki de Arch aussi.
Samba pour déposer les morceaux (et les playlists)
Déposer des morceaux, vous allez probablement le faire depuis un ordinateur, et à peu près n’importe quel système d’exploitation est capable d’aller chercher un dossier SMB en réseau, alors je vous propose de configurer un serveur Samba. Ça a le bon goût d’être très léger, très simple à faire et de fonctionner depuis n’importe quel OS. Allons-y, et tant qu’à faire, on va aussi installer Avahi, qui permettra aux ordinateurs sous Linux et Mac de découvrir les dossiers partagés tous seuls :
sudo apt install samba avahi-daemonOn va partager nos dossiers music et playlists au monde entier en lecture-écriture (YOLO). On édite /etc/samba/smb.conf:
[Musique] path=/var/lib/mpd/music read only=no writable=yes comment=Fichiers musique MPD guest ok = yes force group = audio force user = mpd browsable = yes public = yes create mask = 0644 directory mask = 0755 [Playlists] path=/var/lib/mpd/playlists read only=no writable=yes comment=Listes de lecture MPD guest ok = yes force group = audio force user = mpd browsable = yes public = yes create mask = 0644 directory mask = 0755Je ne maitrise pas particulièrement Samba et il y a peut-être des options superflues, mais globalement l’esprit c’est :
- n’importe qui doit pouvoir accéder à ces deux en lecture et en écriture depuis le réseau. En particulier, la création de dossiers doit marcher
- MPD doit pouvoir lire ce qu’on a écrit dans ces dossiers
- les fichiers et dossiers doivent avoir des permissions sensées
Bien sûr, on peut vouloir restreindre l’accès à certains utilisateurs et/ou avec un mot de passe. Je vous laisse creuser.
Après un redémarrage de Samba :
sudo systemctl restart sambaAvec un peu de chance, dans l’onglet « Réseau » de votre gestionnaire de fichier, dans la section « Partages SMB », votre appareil apparait. Sinon, vous devriez pouvoir y accéder avec smb://HOST/ avec Dolphin et probablement Nautilus, probablement \\HOST sous Windows.
Alternatives possibles à Samba- Si on a un NAS, monter un dossier sur le serveur MPD, voire installer MPD sur le serveur de stockage, ou avoir une tâche chron qui fait un rsync bien placé
- Mettre en place une synchronisation avec Nextcloud ou Syncthing, et faire pointer MPD vers le bon dossier, ou ajouter le dossier de MPD comme dossier de stockage externe à Nextcloud par exemple
- SFTP
- NFS
- FTP (mais les autres options sont probablement meilleures)
Ce n’est bien sûr pas nécessaire si vous êtes parfaitement satisfait·e avec MPD, mais si vous voulez que votre appareil soit en plus capable de se comporter comme une enceinte Bluetooth, vous êtes au bon endroit.
Les difficultés qu’on va résoudre sont les suivantes :
- pour l’instant, MPD accède au son directement avec ALSA, et en général on ne peut pas être plusieurs sur ALSA. En tout cas, et même s’il a l’air possible de faire fonctionner Bluetooth et ALSA ensemble, ça n’a pas l’air d’être terriblement simple ou même stable. Donc on va utiliser PipeWire. On aurait pu utiliser PulseAudio, mais PipeWire le remplace, et fonctionne généralement mieux.
- PipeWire, c’est pensé pour être lancé dans une session graphique d’un utilisateur, mais nous, on a un serveur headless. Il va falloir faire en sorte de lancer une session utilisateur au démarrage sans interaction, et que cette session ne soit pas tuée.
- mpd tourne avec son utilisateur, PipeWire avec son utilisateur, et après s’être rendu compte qu’il faut que ça soit les mêmes, faut aussi savoir comment, et le faire.
Lors de l’installation de Debian, on a défini un utilisateur. On peut utiliser cet utilisateur. Sinon, on peut aussi en créer un pour ça, pensez bien à l’ajouter aux groupes audio et bluetooth.
Garder une session utilisateur activeOn va démarrer une session utilisateur au boot :
sudo loginctl enable-linger user # remplacer user par le nom d’utilisateurOn va s’assurer que les processus de cette session ne sont pas tués au moment où on quitte une session (par exemple quand on quitte une session ssh) : dans le fichier /etc/systemd/logind.conf, décommentez la ligne KillExcludeUsers et ajouter le nom d’utilisateur après le =. Vous deviez avoir
KillExcludeUsers=useroù user est le nom d’utilisateur.
On peut maintenant recharger ces paramètres :
sudo systemctl restart systemd-logind Installer PipeWire et les choses nécessairesÀ ce stade, MPD bloque probablement l’utilisation du son parce qu’il s’y connecte via ALSA. On va le stopper.
sudo systemctl stop mpdPipeWire et WirePlumber vont dorénavant gérer le son, et libspa-0.2-bluetooth permet au démon qui gère le Bluetooth (Bluez) de s’inter-connecter à PipeWire pour le Bluetooth Audio.
sudo apt install wireplumber pipewire libspa-0.2-bluetoothEn tant que votre utilisateur (nommé user dans les commandes précédentes) (c’est important), activez PipeWire au démarrage et lancez-le :
systemctl --user enable --now pipewire wireplumberNotez que pipewire-pulse n’est pas nécessaire, d’ailleurs vous pouvez le supprimer ou le désactiver en toute sécurité s’il a été installé.
Installer un agent Bluetooth qui accepte toutes les connexions audio sans vérifications avec codeNormalement, accepter les connexions Bluetooth se fait à l’aide d’un agent Bluetooth :
- qui tourne dans votre session graphique : c’est géré par votre environnement de bureau, ou une application comme bluetooth-applet (est-ce que ça existe encore ?) que vous lancez. Là, évidemment, on n’a pas de session graphique, et pour l’instant on n’a pas d’agent Bluetooth qui tourne.
- En ligne de commande, avec un outil comme bluetoothctl. Je vous invite à essayer. Vous pouvez lancer des commandes comme pairable on, discoverable on, scan on, et essayer de vous connecter avec un autre appareil. Après vos tests, vous pouvez tout recommencer en faisant oublier les appareils des deux côtés.
Évidemment, on ne va pas se connecter en ssh pour lancer bluetoothctl à chaque fois qu’on veut se connecter en Bluetooth. On va mettre en place un agent qui démarre automatiquement et qui a un comportement similaire à un casque ou des enceintes Bluetooth : qui accepte toutes les connexions Bluetooth audio. Pour ça, on va utiliser un script Python partagé par Collabora sous Licence LGPL 2.1+ qui fait ça très bien et qu’on va lancer au démarrage.
Bien sûr, ça veut dire que vos voisins peuvent s’amuser à jouer des trucs chez vous, ou même se connecter fortuitement en choisissant la mauvaise entrée.
Ce script a une dépendance, qu’on va installer :
sudo apt install python3-dbusOn va placer ce script dans speaker-agent.py:
#!/usr/bin/python3 # SPDX-License-Identifier: LGPL-2.1-or-later import dbus import dbus.service import dbus.mainloop.glib from gi.repository import GLib BUS_NAME = 'org.bluez' AGENT_INTERFACE = 'org.bluez.Agent1' AGENT_PATH = "/speaker/agent" A2DP = '0000110d-0000-1000-8000-00805f9b34fb' AVRCP = '0000110e-0000-1000-8000-00805f9b34fb' bus = None class Rejected(dbus.DBusException): _dbus_error_name = "org.bluez.Error.Rejected" class Agent(dbus.service.Object): exit_on_release = True def set_exit_on_release(self, exit_on_release): self.exit_on_release = exit_on_release @dbus.service.method(AGENT_INTERFACE, in_signature="", out_signature="") def Release(self): print("Release") if self.exit_on_release: mainloop.quit() @dbus.service.method(AGENT_INTERFACE, in_signature="os", out_signature="") def AuthorizeService(self, device, uuid): # Always authorize A2DP and AVRCP connection if uuid in [A2DP, AVRCP]: print("AuthorizeService (%s, %s)" % (device, uuid)) return else: print("Service rejected (%s, %s)" % (device, uuid)) raise Rejected("Connection rejected by user") @dbus.service.method(AGENT_INTERFACE, in_signature="", out_signature="") def Cancel(self): print("Cancel") if __name__ == '__main__': dbus.mainloop.glib.DBusGMainLoop(set_as_default=True) bus = dbus.SystemBus() agent = Agent(bus, AGENT_PATH) mainloop = GLib.MainLoop() # By default Bluetooth adapter is not discoverable and there's # a 3 min timeout # Set it as always discoverable adapter = dbus.Interface(bus.get_object(BUS_NAME, "/org/bluez/hci0"), "org.freedesktop.DBus.Properties") adapter.Set("org.bluez.Adapter1", "DiscoverableTimeout", dbus.UInt32(0)) adapter.Set("org.bluez.Adapter1", "Discoverable", True) print("RPi speaker discoverable") # As the RPi speaker will not have any interface, create a pairing # agent with NoInputNoOutput capability obj = bus.get_object(BUS_NAME, "/org/bluez") manager = dbus.Interface(obj, "org.bluez.AgentManager1") manager.RegisterAgent(AGENT_PATH, "NoInputNoOutput") print("Agent registered") manager.RequestDefaultAgent(AGENT_PATH) mainloop.run()Le script mentionne le Raspberry Pi, mais il n’y a absolument rien de spécifique au Raspberry dedans, il est suffisamment générique.
On va lancer ce script au démarrage en créant le fichier ~/.config/systemd/user/speaker-agent.service
[Unit] Description=Bluetooth speaker agent [Service] ExecStart=python3 speaker-agent.py [Install] WantedBy=default.targetEt en l’activant (--now le lance tout de suite) :
systemctl --user enable --now speaker-agent.serviceIl faudra aussi mettre JustWorksRepairing = always dans /etc/bluetooth/main.conf pour permettre le re-appairage sans interaction. Bon là j’avoue, je paraphrase largement ma source :-)
Ensuite, on va autoriser la connexion Bluetooth même sans session active (en SSH par exemple) (source). Si on ne fait pas ça, la connexion Bluetooth n’est pas possible si l’utilisateur n’a pas une session active (les symptômes : on arrive à se connecter en Bluetooth que quand on est loggué en SSH ou autre, et la connexion Bluetooth casse dès qu’on quitte la session).
mkdir -p ~/.config/wireplumber/bluetooth.lua.d cat > ~/.config/wireplumber/bluetooth.lua.d/80-disable-logind.lua << EOF -- Disable arbitration of user allowance of bluetooth via D-Bus user session bluez_monitor.properties["with-logind"] = false EOF systemctl --user restart wireplumber Adapter MPD (et Samba) pour utiliser PipeWirePour que MPD utilise PipeWire, il faut adapter :
- sa configuration pour qu’il tourne avec le même utilisateur
- sa configuration audio_output
- les permissions dans /var/lib/mpd
Dans /etc/mpd.conf, changer la ligne user :
user "mpd"Elle doit maintenant utiliser votre utilisateur :
user "user"Commentez votre bloc audio_output, on va maintenant utiliser PipeWire (je suppose qu’on pourrait garder les deux et les clients MPD peuvent probablement permettre de choisir la sortie son, mais ça me parait complexifier l’utilisation pour un intérêt pas clair, ce qui va contre nos objectifs) :
audio_output { type "pipewire" name "PipeWire Sound Server" }Maintenant, il est temps d’adapter les permissions dans /var/lib/mpd. On va stopper Samba juste avant, et adapter sa configuration.
sudo systemctl stop mpd samba # si mpd tournait encore sudo chown -rv user /var/lib/mpd sudo systemctl start mpdNote : MPD peut aussi être démarré dans une session utilisateur et à ce stade, c’est ce qu’il serait probablement le plus logique de faire, en bougeant /etc/mpd.conf et le contenu de /var/lib/mpd dans le dossier de notre utilisateur. C’est d’ailleurs la manière privilégiée de démarrer MPD à partir de Debian Trixie. Par simplicité et cohérence, et parce que cette section « Récepteur Bluetooth » est optionnelle mais que les manipulations pour lancer une session utilisateur au démarrage décrites dans cette section seraient nécessaires pour lancer MPD en tant que service utilisateur au démarrage dans tous les cas et que ça apporte une réelle complexité, on fait le choix de garder MPD en tant que service système.
Modifiez /etc/samba/smb.conf. Dans les deux blocs de partages qu’on a ajouté précédemment, changez la ligne force user = mpd en:
force user = userPuis on peut redémarrer Samba :
sudo systemctl start samba Permettre à PipeWire de configurer sa prioritéSi vous voyez cela dans les logs de PipeWire :
user@tablette:~$ journalctl --user -fu pipewire avril 29 13:41:01 tablette systemd[514]: Started pipewire.service - PipeWire Multimedia Service. avril 29 13:41:01 tablette pipewire[531]: mod.rt: Can't find org.freedesktop.portal.Desktop. Is xdg-desktop-portal running? avril 29 13:41:01 tablette pipewire[531]: mod.rt: found session bus but no portal avril 29 13:41:02 tablette pipewire[531]: mod.rt: RTKit error: org.freedesktop.DBus.Error.AccessDenied avril 29 13:41:02 tablette pipewire[531]: mod.rt: could not set nice-level to -11: Permission non accordée avril 29 13:41:02 tablette pipewire[531]: mod.rt: RTKit error: org.freedesktop.DBus.Error.AccessDenied avril 29 13:41:02 tablette pipewire[531]: mod.rt: could not make thread 547 realtime using RTKit: Permission non accordéeÇa veut grosso modo dire que PipeWire cherche à se rendre plus prioritaire via un mécanisme fourni par les environnements de bureau (xdg-desktop-portal), n’y arrive pas parce qu’évidemment, aucun environnement de bureau ne tourne, alors il essaie de demander au service système rtkit, et se fait jeter.
Ce n’est pas très grave et on pourrait vivre sans, mais ça pourrait aider à limiter les saccades sonores, donc on va réparer ça (et je pense avoir vu une bonne amélioration grâce à ça).
Le fichier /usr/share/polkit-1/actions/org.freedesktop.RealtimeKit1.policy dicte qui a le droit ou non de configurer sa priorité (découvert ici, mais le conseil de modifier ce fichier système n’est pas bon, au moins parce qu’une mise à jour future risque d’écraser les modifications) :
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE policyconfig PUBLIC "-//freedesktop//DTD PolicyKit Policy Configuration 1.0//EN" "http://www.freedesktop.org/standards/PolicyKit/1/policyconfig.dtd"> <policyconfig> <vendor>Lennart Poettering</vendor> <action id="org.freedesktop.RealtimeKit1.acquire-high-priority"> <description>Grant high priority scheduling to a user process</description> <description xml:lang="tr">Bir sürece yüksek öncelikli çalışabilme yetkisi ver</description> <message>Authentication is required to grant an application high priority scheduling</message> <message xml:lang="tr">Sürecin yüksek öncelikli çalıştırılabilmesi için yetki gerekiyor</message> <defaults> <allow_any>no</allow_any> <allow_inactive>yes</allow_inactive> <allow_active>yes</allow_active> </defaults> </action> <action id="org.freedesktop.RealtimeKit1.acquire-real-time"> <description>Grant realtime scheduling to a user process</description> <description xml:lang="tr">Bir sürece gerçek zamanlı çalışabilme yetkisi ver</description> <message>Authentication is required to grant an application realtime scheduling</message> <message xml:lang="tr">Sürecin gerçek zamanlı çalıştırılabilmesi için yetki gerekiyor</message> <defaults> <allow_any>no</allow_any> <allow_inactive>yes</allow_inactive> <allow_active>yes</allow_active> </defaults> </action> </policyconfig>Dans un système Unix, les paramètres systèmes sont dans /etc. Pour Polkit, il existe un mécanisme pour écrire des règles, qu’on va utiliser. On va créer une règle qui permet à n’importe quel utilisateur du groupe audio de modifier la priorité de ses processus. C’est probablement trop large, mais je ne connais pas bien Polkit et ça fera le taf pour notre application dédiée à l’audio. Si vous avez des meilleures idées, n’hésitez pas à partager en commentaire.
sudo cat > /etc/polkit-1/rules.d/rt.rules << EOF polkit.addRule(function(action, subject) { if (subject.isInGroup("audio") && ( action.id == "org.freedesktop.RealtimeKit1.acquire-high-priority" || action.id == "org.freedesktop.RealtimeKit1.acquire-real-time" )) { return polkit.Result.YES; } }) EOF sudo systemctl restart polkit.service systemctl --user restart pipewireOn pourra constater l’absence des échecs dans les journaux de PipeWire.
Bon, on sent bien que toute cette utilisation audio sans session utilisateur standard n’est pas un cas d’utilisation hyper bien prévu et on se retrouve à toucher des coins un peu sombres du système…
Évitez les flux Wifi 2,4 GHzSi vous avez un Wifi en 2,4 GHz, ça peut causer des soucis avec le Bluetooth, et le son peut saccader. Si vous observez cela, il faudra alors limiter au maximum les services et autres tâches de fond qui font des communications réseau. Évidemment, si vous pouvez utiliser un câble Ethernet, c’est encore mieux.
Sur ce plan, tous les codecs audio Bluetooth ne semblent pas se valoir. Pour tester ça, j’ai lancé un test iperf3 entre la tablette et mon ordinateur portable pour saturer le Wifi. Ça devenait immédiatement catastrophique avec le codec SBC-XQ, alors qu’avec le codec Opus 05, il y a initialement des saccades, puis ça s’améliore vite. J’imagine que le codec Opus dégrade très efficacement la qualité pour compenser. Bon, malheureusement, tous les systèmes ne permettent pas de choisir son codec donc ce n’est qu’une solution partielle au problème.
Note sur l’utilisation des ressourcesC'est léger :
load average: 0,12, 0,10, 0,05 $ free -mh total utilisé libre partagé tamp/cache disponible Mem: 986Mi 253Mi 324Mi 6,1Mi 550Mi 733Mi Échange: 974Mi 0B 974MiGlobalement, le CPU s’ennuie en pleine lecture, et à peine un tiers du Giga de mémoire vive est utilisé, la partition d’échange s’ennuie, donc il y a encore largement la place de faire tourner d’autres trucs sur cet appareil si jamais. On peut aussi constater qu’ajouter MPD et tout ce bazar à une installation existante ne la surchargerait pas plus que ça.
On a aussi un temps de démarrage autour des 20 secondes, ce qui est franchement pas mal.
Conclusion et améliorations possiblesOn est pas mal rentrés dans les détails, c’était l’occasion d’explorer plein de choses mine de rien. J’ai à la fois appris des choses, précisé des connaissances, et mis plein de choses que je savais ensemble pour obtenir un résultat très satisfaisant. On se retrouve à manipuler de la gestion de services, des configurations systemd un peu poussées, du bluetooth, du son avec ALSA et PipeWire, de la gestion de session utilisateur sur un système headless, et plein d’autres trucs et aller dans les détails comme le boot pour avoir quelque chose de rapide, comme l’écran éteint au bon moment, ou la personnalisation du comportement du bouton power (honnêtement, je n’étais pas très sûr que c’était possible, j’avais lancé la recherche au cas où !).
J’espère que l’aventure vous a plu aussi.
Bien sûr l’ensemble est perfectible, alors je vous laisse avec des idées, n’hésitez pas à partager les vôtres en commentaires :
- Jouer un son au démarrage / à l’appairage Bluetooth. – pour l’instant, la tablette s’allume et puis plus rien. En général, les enceintes Bluetooth jouent un petit son quand elles sont prêtes ou qu’elles viennent d’être appairées et ça peut être pratique
- Commande vocale. Il y a clairement des manières d’utiliser le micro de la tablette pour demander le morceau suivant, précédent ou régler le volume. Ça peut être pratique quand on n’a pas le téléphone sous la main et ça peut avoir son petit effet en soirée la première fois, tant que les gens ne sont pas encore complètement blasés par le concept parce que tout le monde n’a pas un Google Nest ou un Alexa chez soi, surtout dans ma bulle sociale. Mais c’est probablement finalement très gadget et je me vois mal interrompre une conversation en criant un ordre pour gérer la musique…
- Appairage Bluetooth plus sécurisé. En général, les enceintes Bluetooth acceptent les nouveaux appareils dans un mode spécial. En appuyant sur le bouton Bluetooth, ou quelque chose comme ça. Ça peut éviter que les voisin·e·s ne te rickrollent au moment le plus inopportun. Ça vaudrait le coup de travailler sur quelque chose comme ça. Avec l’écran tactile, il est probablement possible de dessiner une forme particulière reconnue (ça serait un peu badasse, ou plus probablement, n’accepter (une seule) nouvelle connexion que dans les X minutes après le démarrage ou le retour de veille. Comme ça, demander l’appairage consiste à appuyer deux fois sur le bouton power, ce qui est plutôt acceptable. Si vous avez des idées, n’hésitez pas à partager…
- Réveil à distance avec du Wake-on-LAN. Ça ne s’applique probablement pas à mon matériel, mais il est possible d’utiliser astucieusement le WoL pour réveiller l'appareil à distance, avec éventuellement la complicité d’un routeur ou d’un serveur toujours allumé chez vous.
- Désactiver le Wifi quand le Bluetooth est utilisé. Pour éviter les interférences, on pourrait imaginer que quand un appareil se connecte en Bluetooth, on éteint le Wifi (avec rfkill par exemple), on met MPD en pause (ou on le stoppe s’il est en train de jouer un flux) parce qu’on ne peut plus le contrôler, puisque le Wifi n’est plus actif, et on réactive le Wifi quand l’appareil Bluetooth est déconnecté. On pourrait même être plus fin et détecter quand du son est joué.
- Automatiquement mettre MPD en pause lors d’une connexion Bluetooth. (un peu doublon avec le précédent point) Pour l’instant, il faut manuellement mettre en pause mpd, sinon les deux flux audios se jouent en même temps. -- Changer la classe Bluetooth de l’appareil. Ça permettrait à l’appareil de se déclarer comme appareil audio, pour que ça affiche le bon icône sur les autres appareils.
- Mises à jour automatiques. Il ne faut pas que ça casse des choses en pleine lecture, ni que ça cause des interférences avec le Bluetooth à cause des téléchargements.
- Ne pas persister les logs. Pour l’instant, les logs sont écrits dans /var/log sur le SSD, entrainant une usure et un ralentissement cependant probablement tous deux négligeables. On pourrait vouloir ne pas les garder, mais c’est aussi risquer de perdre des informations de débogage le jour où il y a un pépin.
Je vais probablement trouver d’autres choses à améliorer après publication de l’article. Je partagerai peut-être les choses intéressantes en commentaires ou dans des journaux, et je ferai peut-être vivre l’article sur mon site.
Télécharger ce contenu au format EPUBCommentaires : voir le flux Atom ouvrir dans le navigateur
Not so Common Desktop Environment (NsCDE), un paradigme différent
Not so Common Desktop Environment reproduit fidèlement Common Desktop Environment dit CDE, classique des Unix des années 90. Mais pourquoi puisque CDE est libre ? Eh bien pour faire mieux ! NsCDE est plus léger, plus complet, plus souple.
NsCDE est sorti en version 2.3 le 20 juin 2023. C'est un petit projet qui s'appuie sur un thème pour FVWM et quelques utilitaires de son cru. Le reste, c'est un thème pour les applications GTK et Qt. Poussant le mimétisme jusqu'à reproduire le script shell du premier démarrage, NsCDE vous demande quels doivent être votre terminal, votre gestionnaire de fichier, votre éditeur, etc. Ce n'est pas mal de pouvoir choisir ! Comme c'est assez abouti il n'y a pas eu de nouveaux développements depuis.
- lien nᵒ 1 : Comparatif de Liam Proven
- lien nᵒ 2 : Release
- lien nᵒ 3 : Dépôt github et intro
J'ai trouvé l'ensemble agréable et cohérent, certes un peu brutal visuellement, mais on n'est pas devant un thème, c'est un paradigme de fonctionnement différent. Avec un peu d'habitude on peut bosser sans surprises.
Un exemple sur la gestion des fenêtres, différente du monde Win/Mac qui est le paradigme habituel sur la plupart des bureaux Linux :
Elles se déplacent encore par la barre de titre, mais pour le reste les trois clics de souris sont utilisés.
Le bouton de gauche est trois choses à la fois : un menu déroulé par un clic gauche, un menu étendu déroulé par un clic droit et une boite de dialogue affichée par un clic centre ; la fenêtre se ferme avec un deuxième-clic rapproché dans le temps (clic gauche ou droit) ou un double clic aussi.
À droite, un bouton agrandit la fenêtre avec beaucoup de possibilités selon le clic gauche, centre ou droit et selon la séquence de clics ; un deuxième bouton réduit la fenêtre : clic gauche pour l'icônifier, clic droit pour l'enrouler. Icônifiée, un clic droit l'agrandit, les clics gauche et centre ouvrent des menus.
NsCDE ne propose qu'un minimum d'utilitaires, il ne s'agit pas de tout intégrer façon KDE ou Gnome, mais plutôt de fournir un environnement de travail pour interagir avec vos programmes préférés. Testez-le pour découvrir autre chose que le fonctionnement habituel. Le libre vous permet de choisir, sortez des sentiers battus.
En tout cas ne l'installez pas pour sa légèreté, Liam Proven l'utilisant avec des composants XFCE l'a trouvé plus léger que les autres, mais il est plus lourd que KDE 3.
L'influence de CDE à travers des anecdotesC'est moche, hein ? Et pourtant le design de CDE a influencé d'autres environnements de bureau :
- Le présentation manager d'OS/2 a influencé l'aspect de Win 3 et CDE, mais réciproquement le LaunchPad d'OS/2 v3 reproduit le lanceur CDE.
- XFCE 3 reproduisait le lanceur CDE :
- Et même KDE, dont le nom serait un jeu de mots avec Kool Desktop Environment (personne ne s'en souvient vraiment, on trouve d'autres explications).
- À la même époque, Silicon Graphics avait pris un chemin différent avec IRIX Interactive Desktop. D'après mon cousin, qui passait de la PAO sur Mac à la 3D sous Irix, c'était très ergonomique et ça valait bien le Mac. Il n'a jamais eu besoin d'ouvrir un terminal.
NsCDE propose quelques paquets tout prêt pour Fedora, Suse, Ubuntu, Debian et Slackware ainsi qu'un gros Tarball à décompresser dans /opt.
Je vous recommande de l'utiliser sous un compte de test, sinon NsCDE va pourrir votre bureau habituel avec ses boites de dialogue et ses thèmes Firefox, LibreOffice, etc. En plus, NsCDE n'a pas de script de désinstallation, il sauvegarde vos paramètres Gtk et Qt, mais seulement jusqu'aux versions 4 et 5.
Évitez d'y lancer des applications Gnome à cause des menus et fenêtres, sauf si vous installez gtk3-nocsd (no client side decoration). Préférer les applications légères et simples de LXDE/LXQt, Mate, XFCE, … Ou encore les applis Motifs/X11, le thème NsCDE leur ira comme un gant.
Tester CDESi vous tenez à essayer le vrai CDE pour voir comment c'était, il y a un CD Live sous Debian.
Télécharger ce contenu au format EPUBCommentaires : voir le flux Atom ouvrir dans le navigateur
Sortie du gestionnaire d'archives PeaZip 10.4.0
PeaZip n'a jamais été abordé dans ces colonnes jusqu'à présent, alors qu'il fait partie des outils multi-plateformes permettant une transition en douceur vers le libre. Il a presque dix ans. Sortie le 14 avril, la version 10.4 continue la série 10.0 commencée en octobre 2024.
PeaZip affiché avec son thème sombre dans Wayland
- lien nᵒ 1 : Site de Peazip
- lien nᵒ 2 : Code source sur Github
- lien nᵒ 3 : Le projet sur Sourceforge
- lien nᵒ 4 : Benchmark comparant Peazip, 7-Zip, WinRar et Winzip
Giogio Tani, le développeur de PeaZip publie plusieurs versions chaque année. Le logiciel évolue par petites touches largement testées via les fonctions "expérimentales" des versions précédentes.
Je trouve beaucoup d'atouts à PeaZipIl est libre, multi-plateformes, multi-architecture, portable (nomade), écrit en FreePascal avec Lazarus, ouvre et écrit plusieurs formats d'archives. Il est rapide et assez léger pour un tout-en-un (11,2 MB). Il est bien maintenu, l'auteur est transparent sur la sécurité, documentation et tutoriels sont conséquents et pédagogiques. L'interface est travaillée, sobre, ergonomique, thémable, configurable, jolie, … N'en jetez plus ! Ah si encore : il est dispo en Gtk et Qt sous X11 et Wayland, et l'auteur l'empaquête à tout va.
C'est un humble logiciel très bien foutu, très travaillé, utile pour installer des outils libres sur les systèmes proprios afin de les amener en douceur vers Linux ou *BSD (il ne fonctionne pas encore sous Haïku).
Architectures et systèmes- Linux x86_64, x86, ARM, aarch64 ;
- Windows, ReactOS, Wine ;
- Darwin, macOS Intel et aarch64 (Apple Silicon), la famille BSD.
- Le moteur de scriptage intégré permet de convertir vos opérations graphiques pour les automatiser et les étendre avec des options en ligne de commande ;
- un chiffrement solide est disponible, avec authentification à double facteur ;
- l'interface graphique est unifiée sur tous les systèmes et architectures pris en charge, même pour les formats moins courant (zpaq, brotli, zstandard) ;
- le gestionnaire de fichiers avancé facilite, par exemple, la vérification des sommes de contrôles, la déduplication, la conversion de formats d'archives, la recherche, etc ;
- c'est un outil portable et nomade qu'on peut copier sur une clé usb, sur le net ou partager en réseau sans l'installer ;
- PeaZip dispose d'une transparence et des options de suivi pour la vie privée et la sécurité.
Commentaires : voir le flux Atom ouvrir dans le navigateur
Les CRM libres — « Libre à vous ! » du 20 mai 2025 — Podcasts et références
248e émission « Libre à vous ! » de l’April. Podcast et programme :
- sujet principal : les CRM libres (gestion des relations avec la clientèle) avec Jean-Michel Armand (Hybird, Crème CRM) et Laurent Destailleur (Dolibarr, DoliCloud, DoliAsso)
- la chronique « Les humeurs de Gee » sur le rebranding
- la chronique « À la rencontre du libre » de Julie Chaumard sur « Nextcloud : créer son espace cloud libre pour stocker et partager les fichiers » (interview de Luigi Mistrulli de Back2data)
- lien nᵒ 1 : Podcast de la 248ᵉ émission
- lien nᵒ 2 : Les références pour la 248ᵉ émission et les podcasts par sujets
- lien nᵒ 3 : S'abonner au podcast
- lien nᵒ 4 : S'abonner à la lettre d'actus
- lien nᵒ 5 : Libre à vous !
- lien nᵒ 6 : Radio Cause Commune
Rendez‐vous en direct chaque mardi de 15 h 30 à 17 h sur 93,1 MHz en Île‐de‐France. L’émission est diffusée simultanément sur le site Web de la radio Cause Commune. Vous pouvez nous laisser un message sur le répondeur de la radio : pour réagir à l’un des sujets de l’émission, pour partager un témoignage, vos idées, vos suggestions, vos encouragements ou pour nous poser une question. Le numéro du répondeur : +33 9 72 51 55 46. Pas d'émission inédite mardi 27 mai. La prochaine émission sera diffusée mardi 3 juin et le sujet principal sera « Parcours libriste avec Isabella Vanni ». L'occasion d'en savoir plus sur Isabella (qui est coordinatrice vie associative et responsable projets à l'April depuis 2014) :) N'hésitez pas à envoyer vos questions ou remarques à bonjour@libreavous.org, ou en commentaires de la dépêche.
Télécharger ce contenu au format EPUBCommentaires : voir le flux Atom ouvrir dans le navigateur
Revue de presse de l’April pour la semaine 21 de l’année 2025
Cette revue de presse sur Internet fait partie du travail de veille mené par l’April dans le cadre de son action de défense et de promotion du logiciel libre. Les positions exposées dans les articles sont celles de leurs auteurs et ne rejoignent pas forcément celles de l’April.
- [Le Monde Informatique] La préférence open source de l'UE torpillée par les lobbyistes du logiciel
- [ZDNET] WSL devient open source: Microsoft franchit une étape majeure pour les développeurs
- [Gaming Linux FR] Lumière sur l’April
- lien nᵒ 1 : April
- lien nᵒ 2 : Revue de presse de l'April
- lien nᵒ 3 : Revue de presse de la semaine précédente
- lien nᵒ 4 :
La conférence RUST Paris revient en 2025 journée pour les devs et utilisateurs.
Passionnés de RUST, bloquez de nouveau le 25 juin dans votre agenda ! La conférence Rust Paris revient pour sa deuxième édition, même jour, même heure, mais cette fois à l’Université de Jussieu. Cette journée est dédiée aux développeurs et utilisateurs de Rust, avec un mot d’ordre : REX — retour d’expérience. Les intervenants viendront partager leurs succès, mais aussi les défis rencontrés, dans des contextes variés : blockchain, automobile, WebAssembly, embarqué, certification…
Au café libre - « Libre à vous ! » du 13 mai 2025 : Podcasts et références
Deux-cent-quarante-septième « Libre à vous ! » de l’April. Podcast et programme :
- sujet principal : Au café libre : débat autour de l’actualité du logiciel libre et des libertés informatiques.
- la chronique Lectures buissonnières de Vincent Calame, sur l'ouvrage « La guerre de l'information » de David Colon
- la chronique Que libérer d'autre que du logiciel d'Antanak, sur le sujet de l'« Identité numérique ». Rediffusion d'une chronique diffusée pour la première fois le 12 novembre 2024
Rendez‐vous en direct chaque mardi de 15 h 30 à 17 h sur 93,1 FM en Île‐de‐France. L’émission est diffusée simultanément sur le site Web de la radio Cause Commune.
- lien nᵒ 1 : Podcast de l'émission
- lien nᵒ 2 : Les références pour l'émission et les podcasts par sujets
- lien nᵒ 3 : La transcription de l'émission
- lien nᵒ 4 : S'abonner au podcast
- lien nᵒ 5 : S'abonner à la lettre d'actus
- lien nᵒ 6 : Libre à vous !
- lien nᵒ 7 : Radio Cause Commune
Commentaires : voir le flux Atom ouvrir dans le navigateur
Agenda du Libre pour la semaine 22 de l'année 2025
Calendrier Web, regroupant des événements liés au Libre (logiciel, salon, atelier, install party, conférence), annoncés par leurs organisateurs. Voici un récapitulatif de la semaine à venir. Le détail de chacun de ces 33 événements (France: 28, Suisse: 1, Québec: 1, internet: 4) est en seconde partie de dépêche.
- lien nᵒ 1 : April
- lien nᵒ 2 : Agenda du Libre
- lien nᵒ 3 : Carte des événements
- lien nᵒ 4 : Proposer un événement
- lien nᵒ 5 : Annuaire des organisations
- lien nᵒ 6 : Agenda de la semaine précédente
- lien nᵒ 7 : Agenda du Libre Québec
-
- [FR Montpellier] Permanence | OpenStreetMap | HérOSM (hybride) – Du mercredi 30 avril 2025 à 19h00 au vendredi 30 mai 2025 à 22h00.
- [FR Montpellier] Émission | Radio FM-Plus | Temps Libre | Diffusion – Le lundi 26 mai 2025 de 09h00 à 10h00.
- [internet] Mapathon 2024-2025 par CartONG – Le lundi 26 mai 2025 de 18h00 à 20h00.
- [FR Grenoble] L’Atelier de Bidouille (ABIL) – Le lundi 26 mai 2025 de 19h00 à 21h00.
- [FR Saint-Étienne] OpenStreetMap, rencontre Saint-Étienne et sud Loire – Le lundi 26 mai 2025 de 19h00 à 21h00.
- [FR Strasbourg] Éditathon Wikipédia – Femmes illustres et de science – Le mardi 27 mai 2025 de 10h00 à 16h00.
- [internet] Émission «Libre à vous!» – Le mardi 27 mai 2025 de 15h30 à 17h00.
- [FR Chaumont] Permanence associative – Le mardi 27 mai 2025 de 18h00 à 20h00.
- [FR Lille] Permanence associative autour du Libre – Le mardi 27 mai 2025 de 20h00 à 22h00.
- [internet] Permanence numérique (visio) – Le mardi 27 mai 2025 de 20h00 à 21h30.
- [FR Châteaubriant] Install-party – Le mercredi 28 mai 2025 de 09h00 à 17h00.
- [FR Le Mans] Permanence du mercredi – Le mercredi 28 mai 2025 de 12h30 à 17h00.
- [FR Le Blanc] Ateliers “Libres” de Linux – Le mercredi 28 mai 2025 de 14h00 à 17h00.
- [FR Pessac] Cours gratuit d’Espéranto, langue Libre – Le mercredi 28 mai 2025 de 17h30 à 19h00.
- [FR Agen] Permanence d’aGeNUx – Le mercredi 28 mai 2025 de 17h30 à 19h30.
- [FR Vandœuvre-lès-Nancy] Réunion OpenStreetMap – Le mercredi 28 mai 2025 de 18h00 à 20h00.
- [FR Beauvais] Sensibilisation et partage autour du Libre – Le mercredi 28 mai 2025 de 18h00 à 20h00.
- [FR Cysoing] Mercredis Linux – Le mercredi 28 mai 2025 de 18h30 à 23h30.
- [FR Quinsac] Participez au Ğblabla – Le mercredi 28 mai 2025 de 18h30 à 22h00.
- [FR Saint Laurent du Pont] Permanence Rézine Chartreuse – Le mercredi 28 mai 2025 de 19h00 à 20h00.
- [FR Montpellier] Permanence | OpenStreetMap | HérOSM (hybride) – Le mercredi 28 mai 2025 de 19h00 à 22h00.
- [internet] Logiciels Libres et Auto-édition (visio) – Le mercredi 28 mai 2025 de 19h00 à 21h00.
- [CA-QC Montréal] troisw.quebec – Édition-003 – Le jeudi 29 mai 2025 de 18h00 à 20h30.
- [FR Paris] Rencontre April – Le vendredi 30 mai 2025 de 18h30 à 21h30.
- [FR Annecy] Réunion hebdomadaire AGU3L Logiciels Libres – Le vendredi 30 mai 2025 de 20h00 à 23h59.
- [FR Villeurbanne] Réseaux de Voisinage – Le samedi 31 mai 2025 de 10h00 à 12h00.
- [FR Wimille] Retrouvez votre liberté numérique – Le samedi 31 mai 2025 de 10h00 à 12h00.
- [FR Ivry sur Seine] Cours de l’École du Logiciel Libre – Le samedi 31 mai 2025 de 10h30 à 18h30.
- [CH Genève] Café Linux – Le samedi 31 mai 2025 de 13h00 à 14h00.
- [FR Marseille] Install Party GNU/Linux et présentation d’Android et ses Logiciels Libres » – Le samedi 31 mai 2025 de 14h00 à 18h00.
- [FR Le Mans] Café Réparation – Le samedi 31 mai 2025 de 14h00 à 17h00.
- [FR Saint-Cyr-l’École] Découvrez NixOS, la distribution Linux aux nombreux atouts ! – Le samedi 31 mai 2025 de 14h00 à 17h00.
- [FR Quimper] Permanence Linux Quimper – Le samedi 31 mai 2025 de 16h00 à 18h00.
- [FR Gaillac] Repair café – Le dimanche 1 juin 2025 de 10h00 à 13h00.
Ces rencontres mensuelles se veulent être des instants conviviaux pour faire un compte-rendu des activités du mois précédent, mais aussi pour présenter les opérations et rendez-vous à venir que proposent les groupes HérOSM. Naturellement, elles sont également ouvertes à tout public, en présence et à distance.
Si vous avez des propositions n’hésitez pas à compléter la page dédiée.
Programme:
- Contribution sur les points d’eau incendie de l’Hérault;
- Poursuite du Mapathon humanitaire au Nigeria et au Togo:
- Cartographie «Au fil de l’eau» à Gusau (Capitale de l’État de Zamfara, au Nigeria)
- Cartographie du canton de Barkoissi (Région des Savanes au Togo)
- Cartographie du village de Konohoué (Région des Plateaux au Togo)
- Cartographie du village de Djeregou (Région de la Kara au Togo)
Déroulement de la rencontre
Nous vous présenterons les projets en cours, nous vous proposerons de contribuer, faire de la production de données.
Comme d’habitude, chacun amène ce qu’il veut à manger et à boire pour un repas partagé.
N’oubliez pas vos ordinateurs portables pour la séance de saisie!
Tramway lignes 1 et 3, arrêts Port-Marianne et Rives du Lez
GPS Latitude: 43.603095 | Longitude: 3.898166
Carte OpenStreetMap
- Atelier des Pigistes, Atelier des Pigistes, 171 rue Frimaire, Montpellier, Occitanie, France
- https://herosm.fr
- hérosm, rencontre, logiciels-libres, osm, openstreetmap, herosm
Montpel'libre réalise une série d’émissions régulières à la Radio FM-Plus intitulées « Temps Libre ». Ces émissions sont la présentation hebdomadaire des activités de Montpel’libre.
Après le jingle où l’on présente brièvement Montpel'libre, nous donnerons un coup de projecteur sur les activités qui seront proposées prochainement.
Ces émissions seront l’occasion pour les auditeurs de découvrir plus en détails les logiciels libres et de se tenir informés des dernières actualités sur le sujet.
Alors, que vous soyez débutant ou expert en informatique, que vous ayez des connaissances avancées du logiciel libre ou que vous souhaitiez simplement en savoir plus, Montpel'libre, au travers de cette émission, se fera un plaisir pour répondre à vos attentes et vous accompagner dans votre découverte des logiciels libres, de la culture libre et des communs numériques.
Vous vous demandez peut-être ce qu’est un logiciel libre. Il s’agit simplement d’un logiciel dont l’utilisation, la modification et la diffusion sont autorisées par une licence qui garantit les libertés fondamentales des utilisateurs. Ces libertés incluent la possibilité d’exécuter, d’étudier, de copier, d’améliorer et de redistribuer le logiciel selon vos besoins.
Inscription | GPS 43.60524/3.87336
Fiche activité:
https://montpellibre.fr/fiches_activites/Fiche_A5_017_Emission_Radio_Montpellibre_2024.pdf
- Radio FM-Plus, Radio FM-Plus, 4 rue Saint Barthelemy, Montpellier, Occitanie, France
- https://montpellibre.fr
- montpel-libre, radio, fm-plus, temps-libre, diffusion
Vous voulez vous engager pour une cause, rencontrer de nouvelles personnes et découvrir la cartographie participative et humanitaire? CartONG vous invite à participer à un ou plusieurs mapathons en ligne!
Sortie de LOTemplate V2
Pour les lecteurs pressés retenez que LA grande nouveauté de la V2 est la gestion des calc (xlsx, ods,…)
Pour rappel : LOTemplate est un générateur de documents sous licence AGPL v3 qui permet de créer des documents (ODT, DOCX, ODS, XLSX, PDF, …) à partir d'un document modèle office et d'un fichier json pour les données. Cela devrait intéresser toute personnes qui a déjà essayé de générer du doc/odt ou excel/calc à partir de son code.
- lien nᵒ 1 : Github
LOTemplate offre des caractéristiques permettant une intégration simple dans tout projet et permettre la gestion de modèle de document a partir de modèle office :
- Les modèles sont au format bureautique (ods,odt, docx, xlsx, … )
- Les modèle peuvent avoir des structures complexes (variables, boucle, conditions, compteurs, html,…)
- L'outil peut scanner le modèle pour extraire la feuille de variables
- L'outil peut être appelé par une API, une CLI ou un module Python.
- L'outil utilise un LibreOffice headless pour remplir les modèles donc 100% compatible avec Libreoffice.
- Les formats de sortie sont tous les formats pris en charge par LibreOffice (docx, xlsx, pdf, odt, ods, texte, rtf, html, etc.).
Intégrer LOTemplate c'est permettre à un utilisateur lambda de partir de ses documents office pour intégrer ses modèles dans l’application sans avoir à maîtriser des technologies spécifiques et complexes.
Pour aller plus loin vous trouverez dans la documentation :
- deux schémas qui expliquent le fonctionnement de Lotemplate (schema)
- un exemple d’utilisation très parlant dans la doc ;
- des exemples dans les tests unitaires.
Et surtout n’hésitez pas à l’utiliser, faire vos retours et bien sûr contribuer.
Télécharger ce contenu au format EPUBCommentaires : voir le flux Atom ouvrir dans le navigateur
Nouveautés de mai 2025 de la communauté Scenari
Scenari est un ensemble de logiciels open source dédiés à la production collaborative, publication et diffusion de documents multi-support. Vous rédigez une seule fois votre contenu et vous pouvez les générer sous plusieurs formes : site web, PDF, OpenDocument, diaporama, paquet SCORM (Sharable Content Object Reference Model)… Vous ne vous concentrez que sur le contenu et l’outil se charge de créer un rendu professionnel accessible et responsive (qui s’adapte à la taille de l’écran).
À chaque métier/contexte son modèle Scenari :
- Opale pour la formation ;
- Dokiel pour la documentation ;
- Optim pour les présentations génériques ;
- Topaze pour les études de cas ;
- et bien d’autres…
- lien nᵒ 1 : Explication de Scenari
- lien nᵒ 2 : Pour démarrer
- lien nᵒ 3 : Téléchargements
- lien nᵒ 4 : Communauté Scenari
- lien nᵒ 5 : Mastodon
- lien nᵒ 6 : Telegram
Prenez 5 minutes pour répondre au questionnaire « Votre avis sur libre à vous ! »
Libre à vous ! est l’émission de radio proposée depuis 2018 par l’April sur la radio Cause Commune, « la voix des possibles ». L'émission est diffusée chaque mardi de 15h30 à 17h00 sur 93,1 MHz en Île‐de‐France et simultanément sur le site web de la radio. Le podcast et la transcription sont disponibles après la diffusion.
Nous proposons un questionnaire pour connaître l'auditorat de notre émission de radio. Vos réponses à ce questionnaire sont très précieuses pour nous : elles nous permettront d'évaluer l'impact de notre émission et de mieux vous connaître. De votre côté, ce questionnaire est une occasion de nous faire des retours.
Vous pouvez répondre au questionnaire en cinq minutes.
- lien nᵒ 1 : Répondre au questionnaire
- lien nᵒ 2 : Libre à vous !
- lien nᵒ 3 : Radio Cause Commune
Commentaires : voir le flux Atom ouvrir dans le navigateur
Association LinuxFr et site LinuxFr.org en 2023/2024/2025
Le 12 mai 2025 a eu lieu l’assemblée générale de l’association LinuxFr (couvrant statutairement la période du 1ᵉʳ octobre 2023 au 30 septembre 2024). C’était aussi l’occasion de discuter des activités ne relevant pas directement de l’association, mais de la vie du site LinuxFr.org : c’est‑à‑dire y compris de bénévoles ou contributeurs non membres de l’association, sur une période comprise entre la période couverte lors de l’assemblée précédente et le jour de l’assemblée.
Les membres de l’association étaient statutairement convoqués, et les membres de l’équipe de modération, d’animation de l’espace de rédaction et de maintenance, ainsi que la présidente de l'April.
Le compte‑rendu complet est fourni en lien. Voici un résumé des thèmes abordés :
- dans la partie bilan moral de l’association LinuxFr pour la période du 1ᵉʳ octobre 2023 au 30 septembre 2024 : assemblée générale, convention d'hébergement, prix mensuels, relations avec les autres associations et d'autres structures, événements, communication interne et externe, prise de position, potentiels risques juridiques, nouveaux membres, remerciements ;
- dans la partie activités autour du site LinuxFr.org entre le 12 janvier 2024 et le 15 avril 2025 : administration système, développement, administration du site, modération du site, animation de la rédaction du site, contenus réguliers ou particulièrement notables, rencontres physiques, évolutions de l’équipe, visibilité externe (positive ou non), informations régulières des membres, diversité.
- et enfin des discussions diverses sur les thèmes proposés par les personnes présentes.
- lien nᵒ 1 : Association LinuxFr et site LinuxFr.org en 2023/2024 (PDF)
- lien nᵒ 2 : Dépêche précédente : Association LinuxFr et site LinuxFr.org en 2022/2023
Commentaires : voir le flux Atom ouvrir dans le navigateur