❌

Vue lecture

Nouvelles de Haiku - 1er trimestre 2025

Il est temps de s'intéresser à nouveau aux nouveautés de Haiku pour ce dernier trimestre.

Les gros changements sont:

  • Un nouvel allocateur mĂ©moire qui permet enfin d'allouer plus de 3GiB par application (un reste de l'historique de Haiku sur les systĂšmes 32 bits), tout en Ă©tant plus rapide et moins gourmand en mĂ©moire,
  • Des raccourcis claviers sans touches modificatrices,
  • De grosses mises Ă  jour dans la bibliothĂšque C,
  • La poursuite du nettoyage de code et de l'optimisation du navigateur de fichiers Tracker,
  • La reprise du travail sur le pilote NFS4 pour les systĂšmes de fichiers en rĂ©seau,
  • Et bien sĂ»r, de trĂšs nombreuses corrections de bugs et petites amĂ©liorations un peu partout dans le systĂšme.

Sommaire

Google Summer of Code

Le Google Summer of Code est un programme organisĂ© par Google pour encourager de nouveaux dĂ©veloppeurs Ă  se lancer dans la contribution aux logiciels libres. Il prend la forme d'un stage, oĂč un projet de logiciel libre fournit un sujet et une Ă©quipe d'encadrement, et Google se charge de financer le nouveau contributeur pour quelques semaines.

Cette annĂ©e, la candidature de Haiku a Ă©tĂ© rejetĂ©e, la prĂ©fĂ©rence Ă©tant donnĂ©e Ă  des projets engagĂ©s dans l'intelligence artificielle et dans la cybersĂ©curitĂ© (deux domaines beaucoup demandĂ©s par les personnes souhaitant participer au programme). Ce n'est finalement peut-ĂȘtre pas une mauvaise chose pour Haiku: les dĂ©veloppeurs d'autres projets se sont plaints d'avoir reçu des centaines de candidatures visiblement gĂ©nĂ©rĂ©es par des LLM sans aucun travail de prĂ©paration, ce qui leur demande donc beaucoup de temps pour faire le tri dans les candidatures. Les dĂ©veloppeurs de Haiku vont cette annĂ©e pouvoir se consacrer Ă  d'autres tĂąches.

Applications

Tracker

Le travail de refonte du Tracker se poursuit. Les changements intégrés en début d'année ont provoqué un certain nombre de régressions qui sont corrigées petit à petit:

  • Il est Ă  nouveau possible d'ouvrir le dossier contenant un rĂ©sultat de requĂȘte en double cliquant la colonne "emplacement" dans les rĂ©sultats.
  • Correction d'un crash et de problĂšmes de gestion de la mĂ©moire et de problĂšmes de synchronisation entre threads.
  • RĂ©-optimisation de la gestion des menus dynamiques pour Ă©viter de les reconstruire Ă  chaque clic de souris, mise en cache de certaines parties du menu dont la construction nĂ©cessite des accĂšs disque (liste de patrons pour le menu "nouveau document", liste d'add-ons)

Toujours beaucoup de nettoyage de code Ă  faire dans le Tracker:

  • correction de dimensions en dur dans les menus spĂ©ciaux du Tracker,
  • nettoyage du glisser-dĂ©poser,
  • refactorisation de la logique de dessin,
  • amĂ©lioraiton du chargement des add-ons,

Optimisation de la méthode de surveillance des dossiers, utilisation d'un "node monitor" (équivalent de inotify sous Linux) récursif pour surveiller un dossier et tous ses sous-dossiers au lieu de créer un monitor pour chaque dossier. Cela a nécessité des changements au niveau du noyau avec l'ajout du flag B_QUERY_WATCH_ALL pour couvrir ce cas d'usage.

Par jscipione, waddlesplash

MediaPlayer

L'infobulle sur le "scrubber" (barre de navigation temporelle dans le fichier) s'affiche dÚs que la souris est au-dessus de la barre. Elle contient le marqueur de temps correspondant à la position de la souris, permettant de naviguer avec précision dans le fichier. Ceci a nécessité des évolutions dans BToolTip, la classe responsable des infobulles, qui n'était pas prévue pour faire des infobulles persistantes poursuivant le déplacement de la souris.

Ajout d'une option pour afficher une vidéo à 25% de sa taille originale (les contenus en 4K ou plus se faisant plus courants).

Par AkashKumar7902, x512, waddlesplash

WebPositive

WebPositive ne prétend plus savoir traiter les liens utilsant le protocole gopher. Ces liens ne fonctionnaient plus depuis le retour à l'utilisation de cURL pour la couche réseau de WebKit au lieu d'essayer de réimplémenter un client HTTP maison.

AmĂ©lioration de la gestion des sessions : sauvegarde du workspace utilisĂ© pour chaque fenĂȘtre, restauration de la session complĂšte lorsque le navigateur est dĂ©marrĂ© en cliquant sur un lien, avec ouverture du lien dans une fenĂȘtre du workspace courant s'il y en a dĂ©jĂ  une, et dans une nouvelle fenĂȘtre sinon.

Par nephele, ilzu

HaikuDepot

Amélioration de performances, en particulier lors de l'affichage des résultats de recherche, qui étaient trÚs trÚs lents sur les machines un peu anciennes.

Par apl, oco, waddlesplash

ProcessController

Affichage de "system resources" avant "caches" afin de rendre les statistiques d'utilisation mémoire plus claires et plus lisibles.

Correction de problĂšmes dans la mesure d'utilisation de resources par le noyau.

Par OscarL, waddlesplash

Terminal

Correction d'un bug d'initialisation de la couleur du curseur, visible principalement lorsque le terminal est utilisé comme réplicant dans une autre application. Cette possibilité est utilisée dans l'IDE Genio par exemple.

Par jackburton

StyledEdit

Interdiction d'entrer des caractĂšres de contrĂŽle ASCII dans un fichier texte (via les raccourcis clavier control+une lettre).

Par OscarL

Screenshot

Ajout de la possibilitĂ© de sĂ©lectionner un rectangle Ă  capturer (en plus des possibilitĂ©s existantes de capturer tout l'Ă©cran ou la fenĂȘtre active).

Préférences

Nettoyage de code inutile dans les préférences d'affichage

AmĂ©lioration de la gestion des erreurs dans les prĂ©fĂ©rences de sons si le dossier oĂč devraient se trouver les fichiers son n'existe pas.

Par captain0xff, humdinger

Outils en ligne de commande

strace: DĂ©codage des arguments passĂ©s Ă  rlimit ainsi que de l'argument "type" pour mmap, affichage correct des valeurs de type ssize_t ne pouvant pas ĂȘtre reprĂ©sentĂ©es sur 32 bits.

Fusion des outils query et filteredquery. Ces deux outils permettent de rechercher des fichiers Ă  partir de leurs attributs (xattrs) qui sont indexĂ©s par le systĂšme de fichier. Cette mĂ©thode de recherche retourne tous les rĂ©sultats, le filtrage pour limiter Ă  certains dossiers doit donc ĂȘtre fait par l'outil aprĂšs avoir rĂ©cupĂ©rĂ© les rĂ©sultats de la recherche. Cette fonction Ă©tant trĂšs utile, il n'y a pas de raison de l'implĂ©menter comme un outil sĂ©parĂ©.

keymap: l'option -h affiche l'aide, en conformité avec les bonnes pratiques d'interface utilisateur. L'option pour afficher un header est donc réaffectée et devient -H.

leakanalyzer (outil d'analyse des fuites mĂ©moire): ignore la mĂ©moire allouĂ©e en interne par le "locale kit" pour le support des locales dans la librairie C, cette mĂ©moire ne peut pas ĂȘtre libĂ©rĂ©e.

listusb: correction de l'alignement vertical du statut des ports qui n'était pas en face des autres informations affichées.

waitfor (petite application permettant d'attendre différents évÚnements, trÚs utile dans certains scripts) peut maintenant attendre la disponibilité d'une connexion réseau.

Par humdinger, jmairboeck, korli, OscarL, waddlesplash

Kits

Interface Kit

Les raccourcis claviers pour les menus peuvent maintenant ne pas utiliser la touche "Commande" du clavier. Cela permet de dĂ©finir des raccourcis sans touches modificatrices ou avec des touches non-standard. L'utilisation de ce type de raccourcis est relativement rare, mais nĂ©cessaire dans quelques cas particuliers. Par exemple, la touche "Supprimer" peut ĂȘtre utilisĂ©e pour supprimer un fichier ou un Ă©lĂ©ment de liste de lecture, la touche "F2" pour renommer un fichier dans le Tracker, 


Correction de la gestion des raccourcis claviers dans BPopUpMenu qui pouvaient ĂȘtre associĂ©s Ă  la mauvaise fenĂȘtre.

Amélioration du mode sombre: meilleure méthode de choix de la couleur de fond dans BTextView, utilisation d'une combinaison de couleurs cohérentes pour les boutons des barres de défilement.

Ajout de définitions et de documentation pour tous les cÎdes de contrÎle ASCII dans InterfaceDefs.h. Certains d'entre eux n'étaient pas documentés, ce qui pouvait laisser penser qu'il restait de la place libre utilisable pour coder d'autres choses.

Ajout de vérifications dans BMenuField::SetLabel pour traiter correctement les labels NULL.

Optimisations de BScrollView et BColumnListView pour limiter les rafraßchissements inutiles de l'affichage (dans le cadre des améliorations de performances pour HaikuDepot). Dans BColumnListView, ajout d'APIs pour ajouter et supprimer un ensemble d'éléments d'un seul coup, ce qui est beaucoup plus rapide que de les traiter un par un.

Meilleure gestion du sĂ©maphore de synchronisation des menus dans BWindow. Tous les menus dans Haiku sont implĂ©mentĂ©s comme des fenĂȘtres, ce qui signifie que chaque menu s'exĂ©cute dans un thread dĂ©diĂ© avec sa propre boucle d'Ă©vĂšnements. La synchronisation peut donc ĂȘtre particuliĂšrement complexe.

Correction d'un use-after-free (utilisation de mĂ©moire libĂ©rĂ©e qui ne devrait logiquement plus ĂȘtre accĂ©dĂ©e) dans BSlider.

BDecimalSpinner (un contrÎle pour changer une valeur numérique au clavier ou avec des boutons '+' et '-') utilise BNumberFormat et affiche donc le nombre en fonction des préférences de localisation.

Par apl, bitigchi, jscipione, korli, nipos, nephele, PulkoMandy, waddlesplash, x512

Support Kit

Modification de BObjectList pour passer l'argument "owning" en paramÚtre de template plutÎt qu'en paramÚtre du constructeur. Cela améliore les résultats d'analyse statique qui détectaient de nombreux faux positifs "double free" ou "use after free", et rend également plus difficile de faire des erreurs sur la gestion de la mémoire avec ces listes.

Certaines utilisations de BObjectList<BString> ont été remplacées par la classe dédiée BStringList, plus simple à utiliser pour ce cas particulier.

AmĂ©lioration de performances dans BList, BMessage et certaines parties du code les utilisant beaucoup pour rĂ©duire la quantitĂ© d'allocations mĂ©moire dynamiques, en utilisant la pile comme stockage temporaire ou simplement en retardant au maximum les allocations. Par exemple, plutĂŽt que de prĂ©-allouer de la mĂ©moire pour une liste dĂšs la crĂ©ation de cette derniĂšre, on attend l'insertion du premier Ă©lĂ©ment dans la liste. On Ă©limine ainsi des allocations dans les cas oĂč du code crĂ©e une liste, mais n'insĂšre finalement jamais rien dedans.

Amélioration des erreurs remontées par les classes de traitement de fichiers JSON.

Ajout de vérifications de pointeurs NULL manquantes dans BString pour corriger des crashs quand il n'y a plus de mémoire et qu'une allocation échoue.

Par ilzu, waddlesplash

Storage Kit

Amélioration de BFilePanel pour mieux réagir lorsque le dossier de destination n'existe pas.

Inhibition de BBlockCache lors de l'utilisation d'un allocateur mémoire de debug ou avec des gardes pour détecter les mauvaises utilisations mémoire. Dans ce cas, il vaut mieux se dispenser des gains de performance de la mise en cache mais détecter correctement l'utilisation de mémoire aprÚs sa remise à disposition dans le cache.

Ajout d'un type MIME pour les BMessage serialisés sur disque (souvent utilisés pour sauvegarder les préférences d'applications par exemple).

Par augiedoggie, nephele, waddlesplash

Serveurs

input server

Amélioration du clavier virtuel pour se mettre à jour automatiquement lors des changements de résolution d'écran et de disposition du clavier. Ce clavier virtuel n'est pas inclus par défaut dans l'installation de Haiku, il est réservé aux personnes aventureuses qui utilisent Haiku sur une tablette ou qui débugguent un pilote de clavier en ne disposant que d'un écran tactile comme périphérique d'entrée.

Correction du traitement des appels systĂšmes interrompus (SIGINT), ce qui permet Ă  input server de s'arrĂȘter (et de se redĂ©marrer) lorsqu'on le lui demande. Cela est principalement utile pour tester les pilotes de pĂ©riphĂ©riques d'entrĂ©e.

screen blanker

L'Ă©cran de veille utilise le mot de passe "systĂšme" (configurĂ© dans /etc/passwd) au lieu d'implĂ©menter son propre systĂšme de mot de passe. La commande screen_blanker permet de lancer l'Ă©cran de veille immĂ©diatement, et peut ĂȘtre configurĂ©e comme un raccourci clavier pour implĂ©menter un verrouillage simple de la session (note: ne faites pas confiance Ă  l'Ă©cran de veille pour sĂ©curiser votre session, actuellement il est assez facile Ă  contourner par exemple Ă  l'aide du debugger noyau).

launch daemon

AmĂ©liorations sur le launch_daemon: correction du traitement des conditions Ă©chouĂ©es pour lancer un service, ajout de la possibilitĂ© de dĂ©finir une condition sur le contenu d'un fichier au format "driver settings" (format similaire aux fichiers ini) en plus des fichiers BMessage (format binaire), correction de l'arrĂȘt des services.

app server

Remise en route du test_app_server (outil de test permettant de lancer un deuxiĂšme app_server dans une fenĂȘtre, et donc de tester des changements sur le serveur graphique sans avoir besoin de redĂ©marrer tout le systĂšme).

Correction de bugs dans app_server pour l'affichage de texte: retrait de code dupliqué, ajout de nouveaux cas de test, meilleure gestion du clipping et des "bounding boxes" des glyphes, correction de problÚmes sur les lignes de "décoration" (texte souligné, barré) utilisées en combinaison avec une transformation (rotation, déformation).

Par augiedoggie, korli, nipos, madmax

Pilotes

Le pilote i2c prend en charge les plateformes AMD en plus des machines PCH Intel. Le module i2c utilisĂ© (conçu par Designware) est le mĂȘme pour les deux fabricants Ă  quelques petits dĂ©tails prĂšs.

Amélioration de la détection du pointeur racine ACPI: ce pointeur était fourni par le bootloader sur les machines EFI, mais détecté par l'OS aprÚs démarrage sur les machines BIOS. C'est désormais la seule responsabilité du bootloader dans les deux cas, ce qui simplifie le code.

Correction d'un crash sur certaines machines dans le pilote des batteries ACPI.

Ajout de vérifications supplémentaires et corrections du traitement de quelques cas particuliers dans la pile XHCI (USB3).

La gestion des "révisions" des périphériques virtio a été mise en conformité avec la spécification virtio. Pour les anciennes versions de virtio, ce champ de la configuration PCI indiquait la version du protocole virtio à utiliser. Mais cela implique qu'un seul pilote virtio (identifiant les périphériques par leur ID PCI uniquement) doit implémenter toutes les versions de virtio. Pour les nouvelles spécifications, ce sera donc le "device ID" qui va changer, et il sera beaucoup plus simple de développer des pilotes spécifiques "virtio v1", "virtio v2", etc pour chaque version majeure.

Mise à jour des pilotes wifi iaxwifi200 (nommé iwx chez BSD) et ethernet atheros813x pour supporter de nouvelles générations de matériel. Import du nouveau pilote FreeBSD pour les cartes MT7601U, mais il n'y a pas encore de confirmation de son bon fonctionnement sous Haiku.

Nettoyage de code dans les pilotes SCSI et ralinkwifi.

Dans le pilote NVMe, activation de l'option de mise en veille automatique qui permet de réduire la consommation électrique lorsque le disque n'est pas sollicité (réduction de 1W constatée sur certaines machines).

Correction de problĂšmes dans les pilotes d'entrĂ©e (clavier, souris) qui empĂȘchent de redĂ©marrer l'input_server et de retrouver l'usage de ces pĂ©riphĂ©riques.

Ajout de la tablette graphique Cintiq13HD dans le pilote Wacom.

Correction du pilote framebuffer pour ne mapper en mĂ©moire que la zone utilisĂ©e pour le framebuffer, et pas toute la mĂ©moire de la carte graphique. Non seulement cela rĂ©duit la consommation mĂ©moire reportĂ©e, mais surtout, le reste de la mĂ©moire peut ainsi ĂȘtre configurĂ© pour autre chose (par exemple, de l'accĂ©lĂ©ration 3D).

Ajout des cartes Polaris 10 et correction de quelques erreurs de versions du chipset pour d'autres cartes dans le pilote Radeon HD. Ces cartes récentes sont toujours désactivées dans le pilote, le support reste expérimental et peut conduire à un écran noir. Il vaut mieux donc utiliser les pilotes VESA ou framebuffer pour l'instant.

Par ilzu, korli, Lt-Henry, waddlesplash

SystĂšmes de fichiers

Poursuite d'investigations pour amĂ©liorer le temps d'exĂ©cution de "git status" qui est anormalement lent par rapport Ă  la mĂȘme opĂ©ration sous Linux. AmĂ©lioration de l'itĂ©ration sur les arbres B+ dans BFS, qui faisaient plusieurs "get" et "put" du mĂȘme bloc disque successif (les opĂ©rations "get" et "put" permettent d'obtenir l'accĂšs exclusif Ă  un bloc disque, puis de le libĂ©rer, le cache de blocs se chargeant de lire les blocs depuis le disque, puis de les réécrire lorsque c'est nĂ©cessaire).

Amélioration également des verrous de parallélisme dans BFS, ce qui devrait corriger quelques kernel panic.

Correction d'un blocage de ramfs lors de l'utilisation de "trim" pour libérer de la mémoire.

Ajout d'un contrÎle du flag O_DIRECTORY dans plusieurs systÚmes de fichiers lors de l'ouverture d'un fichier. En particulier cela permet d'écrire une image disque sur un disque à l'aide de la commande cp fichier.image /dev/disk/.../raw.

Plusieurs corrections sur le pilote NFS4 qui était délaissé depuis quelque temps: gestion des inodes "périmés" (fichier présent dans un cache local, mais supprimé par une autre machine sur le serveur), et correction d'autres problÚmes rendant le pilote instable. Ajout également de divers outils de debug pour investiguer l'état du pilote.

Le serveur userlandfs peut ĂȘtre lancĂ© plusieurs fois (B_MULTIPLE_LAUNCH), ce qui permet d'utiliser plusieurs systĂšmes de fichiers FUSE ou userlandfs en mĂȘme temps.

Par augiedoggie, Jim906, waddlesplash, x512

libroot

BibliothĂšque C standard

dlsym(RTLD_NEXT) et d'autres fonctions similaires du runtime_loader recherchent maintenant les symboles dans toutes les régions ELF chargées, et pas seulement dans la premiÚre.

Ajout de RTLD_NOLOAD dans la fonction dlopen, ce qui permet d'accéder à des symboles déjà présents dans l'exécutable sans charger un fichier de librairie à nouveau. Il ne s'agit pas d'une fonction standard C ou POSIX, mais d'une extension proposée par GNU et la glibc.

Ajout de la fonction getloadavg qui permet d'obtenir une mesure de la charge du systĂšme. Cela peut ĂȘtre simplement informatif (dans des outils comme htop) ou utilisĂ© pour allouer au mieux les ressources CPU (l'outil de build ninja peut par exemple utiliser cette valeur pour dĂ©cider combien de jobs lancer en parallĂšle)

Mise en conformitĂ© de l'ordre d'appel des destructeurs de pthread_key (il faut potentiellement appeler les destructeurs plusieurs fois, jusqu'Ă  PTHREAD_DESTRUCTOR_ITERATIONS, pour contourner les problĂšmes d'interdĂ©pendances). Correction de l'ordre d'appel des destructeurs lors de l'arrĂȘt d'une application: les destructeurs globaux C++ doivent ĂȘtre appelĂ©s avant les destructeurs de threads (il existe plusieurs mĂ©thodes pour enregistrer des fonctions Ă  exĂ©cuter Ă  l'arrĂȘt d'un thread ou d'un programme, et c'est assez compliquĂ© de toutes les sĂ©quencer correctement).

Une petite optimisation de pthread_cond_signal pour éviter un appel systÚme dans certains cas.

Poursuite du remplacement de fonctions de la libroot par les versions provenant de musl: memmove, strlen, strlcat, ainsi que toutes les fonctions de conversions entre chaĂźnes de caractĂšres et nombres flottants.

Synchronisation de l'implémentation de glob avec FreeBSD.

Optimisation de la famille de fonctions memcmp, strcmp, strncmp: utilisation de comparaisons sur 64 bits lorsque c'est pertinent, retrait de calculs inutiles.

Réécriture et optimisation des fonctions génériques memcpy et memset (utilisées pour les machines qui n'ont pas une version optimisée manuellement en assembleur). Utilisation de la version optimisée de NetBSD pour les machines x86 32 bits. Pour la version 64 bits, le code utilisé par Haiku est meilleur que celui des autres systÚmes, et reste donc en place. Le bootloader utilise uniquement la version générique pour simplifier les choses (il n'a pas besoin de fonctions de trÚs haute performance).

Correction de la fonction write() avec une taille supÚrieure à 2Gio sur les systÚmes 64 bits (la taille était accidentellement tronquée à 32 bits).

Mise en conformité POSIX de la fonction dup3: retour de EINVAL si l'ancien et le nouveau descripteur de fichier sont identiques.

Déplacement de la fonction qsort_r de la libgnu vers la libroot (elle a été standardisée dans POSIX Issue 8). Il s'agit d'une version de qsort permettant de passer un paramÚtre supplémentaire à la fonction de comparaison contenant un contexte réservé à l'utilisateur de la fonction.

Nettoyage du code restant dans la libroot qui provient de la glibc: retrait de dĂ©clarations internes prĂ©sentes dans les en-tĂȘtes publics, retrait de fonctions qui ont dĂ©jĂ  Ă©tĂ© remplacĂ©es, suppression de fichiers non utilisĂ©s, remplacement d'un maximum de fonctions par les versions de musl ou de BSD, ajout des fonctions stdio_ext de musl en remplacement des fonctions privĂ©es supprimĂ©es, retrait d'une partie des fonctions mathĂ©matiques au profit de celles de musl, retrait d'une couche d'abstraction pour l'interfaçage entre la glibc et le support des locales dans Haiku. Certaines parties de la glibc continuent d'ĂȘtre utilisĂ©es pour assurer la compatibilitĂ© avec BeOS, mais l'objectif est de minimiser cette partie et d'utiliser les fonctions de BSD ou de musl, qui sont souvent beaucoup plus simples. La raison est que la glibc est conçue pour pouvoir ĂȘtre utilisĂ©e comme librairie C alternative sur de nombreux systĂšmes, et doit donc avoir un comportement trĂšs proche de la librairie C originale. Par exemple, le format des nombres "long double" peut ĂȘtre diffĂ©rent d'une architecture et d'un systĂšme Ă  l'autre, et la glibc implĂ©mente de nombreux formats spĂ©cifiques, lĂ  oĂč musl se contente des formats les plus classiques.

Mise Ă  jour de getopt, printf et scanf avec la verson de la glibc 2.41. Pour l'instant ces fonctions continuent d'utiliser la version de la glibc, afin de prĂ©server la compatibilitĂ© avec les applications existantes (notamment les applications pour BeOS). En effet, des structures internes sont exposĂ©es dans l'ABI et ne peuvent pas ĂȘtre facilement remplacĂ©es par une autre implĂ©mentation.

Tous ces changements sur la librairie C standard sont faits également en collaboration avec un développeur de la gnulib, dont la suite de tests permet de repérer de nombreux comportements incorrects ou non standards.

Gestion de la mémoire

Finalisation d'un gros chantier de refonte de la gestion de la mĂ©moire, avec en particulier la possibilitĂ© de fusionner des zones de mĂ©moire adjacentes lorsqu'elles sont redimensionnĂ©es. Suite Ă  ces changements, l'allocateur mĂ©moire hoard2 a pu ĂȘtre remplacĂ© par une nouvelle implĂ©mentation basĂ©e sur celle de OpenBSD, avec quelques adaptations et amĂ©liorations spĂ©cifiques Ă  Haiku, dont en particulier un cache d'allocation global pour chaque application. Le nouvel allocateur est lĂ©gĂšrement plus rapide en gĂ©nĂ©ral, et plusieurs ordres de grandeur plus rapide sur certains cas particuliers (par exemple: gcc avec les options de link-time-optimization, ou le compilateur SDCC, ou un test de compilation passe de plusieurs heures Ă  une ou deux minutes). Ce nouvel allocateur est Ă©galement moins consommateur de mĂ©moire et permet aux applications d'allouer plus de mĂ©moire (hoard2 limitait les allocations Ă  environ 3Go y compris sur les systĂšms 64 bits).

Amélioration des messsages d'erreur de la "guarded heap" (allocateur mémoire de débug) pour afficher des messages d'erreurs plus spécifiques au lieu de "generic segfault".

Autres changements

Ajout de macros manquantes dans le fichier elf.h ainsi que de la constante MAP_FILE (inutile mais présente sur Linux et tous les systÚmes BSD) pour faciliter le portage de WebKit.

Interdiction de l'appel de create_sem avec un compteur négatif. Cela était interdit par BeOS mais autorisé par Haiku et il n'y a pas vraiment de raison de le faire.

Modification du code assembleur d'appel des appels systÚmes pour inclure des informations de debug sur la pile d'appels. D'autre part, dladdr a été modifié pour pouvoir accéder aux informations sur ces symboles, qui sont chargés dans la commpage (une zone de mémoire partagée entre le noyau et les processus utilisateurs, qui n'est pas à proprement parler une section de code classique en mémoire). Cela permet à libunwind d'analyser une stacktrace comprenant un appel systÚme.

Par korli, PulkoMandy, trungnt2910, waddlesplash, zeldakatze

Noyau

DĂ©sactivation des Ă©tats de veille C5 et C6 sur les machines Intel "Skylake", car elles empĂȘchent ces machines de dĂ©marrer correctement pour l'instant.

Réparation du cache d'objets "guarded heap" qui permet de détecter et d'investiguer certains problÚmes d'allocation mémoire dans le noyau.

Traitement d'un cas d'erreur dans le cache de fichiers, si la taille d'un fichier est devenue plus petite que son cache entre le moment ou une application demande un accĂšs et le moment oĂč l'accĂšs va effectivement ĂȘtre rĂ©alisĂ©.

Protection de l'accĂšs Ă  certains "spinlock" par des mutex. L'accĂšs aux spinlocks doit ĂȘtre rapide, puisque l'attente est faite de façon active et monopolise un coeur de CPU. Il faut donc s'assurer que le spinlock pourra ĂȘtre rapidement disponible. En particulier, l'affichage de logs Ă  l'Ă©cran lors du dĂ©marrage pouvait considĂ©rablement ralentir les choses (l'affichage se fait page Ă  page et le processus de dĂ©marrage est mis en pause en attendant que l'utilisateur appuie sur une touche).

DĂ©placement de la calibration du timer APIc x86 dans le noyau au lieu du bootloader. AmĂ©lioration de la prĂ©cision de la mesure et utilisation de la calibration fournie via les registres CPUID si elle est disponible (c'est le cas pour certains hyperviseurs par exemple, sur lesquels le systĂšme virtualisĂ© peut difficilement faire lui-mĂȘme une mesure fiable).

Correction du traitement d'un cas particulier par mprotect, qui se manifestait par un kernel panic lors de l'utilisation du navigateur Iceweasel.

Ajout d'un timeout sur l'envoi d'infos sur le port sĂ©rie sur les machines x86. Par exemple sur le Steam Deck, le port sĂ©rie n'est pas du tout prĂ©sent et cela empĂȘchait le dĂ©marrage du systĂšme.

Réécriture de la fonction x86_{read|write}_msr pour les machines 32 bit en tant que fonction inline (c'était déjà le cas pour les machines 64 bits).

Correction de problĂšmes trouvĂ©s en essayant de dĂ©marrer Haiku sur un laptop trĂšs rĂ©cent: ajout du support de X2APIC dans le bootloader EFI, allocation de la page "PML4" avec une adresse physique < 4Go pouvant ĂȘtre codĂ©e sur 32 bits, et Ă  l'inverse traitement correct de la table GDT lorsqu'elle se trouve au-delĂ  de cette limite de 4Go.

DĂ©placement de code de bfs vers le VMCache gĂ©nĂ©rique pour traiter le cas particulier du mmap sur un fichier dont la taille n'est pas un multiple de la taille de pages du systĂšme. La derniĂšre page doit alors ĂȘtre remplie avec des 0. Cela avait Ă©tĂ© corrigĂ© pour bfs, mais le problĂšme Ă©tait Ă©galement prĂ©sent pour d'autres systĂšmes de fichiers dont en particulier ramfs.

Réécriture des FIFOs noyaux (utilisés pour implémenter pipe(2)). Le benchmark stress-ng --pipe 1 passe de 230 Mo/s à 2.5Go/s (dans une machine virtuelle).

Ajout d'une option syslog_max_history pour pouvoir conserver plus que 2 fichiers de syslog (ce qui reste l'option par défaut).

Nettoyage et optimisation de la structure Thread utilisĂ©e dans le noyau pour reprĂ©senter les threads: utilisation d'une liste doublement chaĂźnĂ©e pour accĂ©lĂ©rer les manipulations de la liste, correction du dĂ©comptage du temps CPU utilisĂ© par les processus, correction d'une fuite mĂ©moire, et correction d'un problĂšme dans la fonction get_next_thread_info si les identifiants de threads bouclent (c'est-Ă  dire que plus de 4 milliards de threads ont Ă©tĂ© créés et que des identifiants de threads ont donc dĂ» ĂȘtre recyclĂ©s).

Le kernel panic se produisant si un thread tente de libérer un mutex qui ne lui appartient pas affiche automatiquement la stacktrace du thread qui est propriétaire du mutex.

Ajout d'un appel à cpu_pause dans le code des conditions variables pour réduire la consommation électrique inutile lors d'une attente active.

Correction de plusieurs problĂšmes de sauvegarde du contexte de la FPU pour l'architecture x86_64:

  • Remise Ă  0 de l'Ă©tat de la FPU lors des changements de threads,
  • Stockage de l'Ă©tat de la FPU dans la structure d'info sur le thread au lieu de la stocker sur la pile,
  • Envoi des bons codes d'exception FPE_* lors des exceptions SIGFPE,
  • Gestion des "control words" lors des changements de contexte.

Cela corrige des crashs d'application et mĂȘme des kernel panic dans certains cas.

Les drapeaux de protection des zones de mémoire du noyau ne sont plus visibles par les utilisateurs non privilégiés. L'utilisateur "user" principal peut toujours y accéder, cela est utilisé par exemple par ProcessController. Correction d'un flag mal positionné pour les zones mémoire de l'allocateur "slab", qui n'étaient pas indiquées comme accessibles en écriture.

Renommage des fonctions concernant la gestion des interruptions pour Ă©viter l'abbrĂ©viation "int" qui pouvait prĂȘter Ă  confusion avec "integer" dans certains cas. Utilisation du mot complet "interrupt" lorsque c'est possible, ou Ă  dĂ©faut de "intr".

Correction d'une fuite de mémoire dans la gestion de la mémoire physique avec du paging à 5 niveaux (LA57).

Correction d'un interblocage dans le cache du systÚme de fichier identifié à l'aide des tests de gVisor.

Correction d'un bug dans la fonction vsnprintf du noyau qui n'affichait pas correctement les nombres inférieurs à 0.1 (les 0 aprÚs le point étaient perdus, et donc 0.01, 0.001. 0.0001, 
 étaient tous affichés comme 0.1).

L'appel systĂšme create_dir retourne EEXIST si un fichier ou un dossier existe dĂ©jĂ  Ă  l'endroit demandĂ©, et ce, mĂȘme si le systĂšme de fichier est en lecture seule. Auparavant, l'appel systĂšme retournait EROFS, ce qui perturbe certaines applications.

AmĂ©lioration du traitement des "doubles fautes" (lorsque le traitement d'une exception matĂ©rielle dĂ©clenche une autre exception matĂ©rielle) sur x86. Le registre GS Ă©tait corrompu, ce qui empĂȘchait l'utilisation du debugger dans ce cas, et plusieurs autres problĂšmes conduisaient vraissemblablement Ă  une "triple faute" (une exception dans le traitement de l'exception dans le traitement de
 bon vous voyez le principe), et Ă  un redĂ©marrage de la machine car Ă  ce stade il est peu probable qu'aucune autre opĂ©ration ne remette le systĂšme dans un Ă©tat cohĂ©rent.

Bootloader

Amélioration du bootloader PXE pour afficher clairement "Network" dans la méthode de démarrage, ainsi que l'adresse IP du serveur de disque fournissant le rootfs.

Remise en route du développement sur la console graphique utilisée pour simuler un mode texte pour le menu de démarrage, lorsque la machine ne fournit pas un mode texte matériel ou au niveau de son BIOS (c'est le cas par exemple sur certains Chromebooks avec SeaBIOS). Pour l'instant, cela nécessite une version du bootloader compilée spécifiquement pour ce cas de figure, car on ne sait pas encore détecter de façon fiable si le mode texte du BIOS est disponible.

Par Anarchos, augiedoggie, korli, phcoder, waddleslplash

Scripts de compilation

Poursuite du travail pour corriger tous les warnings détectés par le compilateur, ainsi que quelques problÚmes détectés par les sanitizers de gcc (libasan et libubsan) qui sont maintenant compatibles avec Haiku.

Correction de problĂšmes empĂȘchant de cross-compiler Haiku depuis FreeBSD ou un systĂšme Linux utilisant la libc musl. Correction Ă©galement de problĂšmes pour le build depuis macOS.

Suppression de fichiers inutiles dans la version de unzip intégrée dans le build de Haiku.

Généralisation des options permettant d'activer la "stack protection" à plus de parties du systÚme.

Remplacement de la commande which par command -v. Cette derniÚre est un builtin de la plupart des shells, elle est donc plus rapide à exécuter et ne nécessite pas une dépendance supplémentaire.

Migration de Python 2 à Python 3 pour le script générant les fichiers "libroot stubs" (utilisé uniquement lors du bootstrapping de Haiku pour une nouvelle architecture).

Mise à jour de la version de m4 utilisée pour le bootstrap de Haiku (compilation de tous les paquets à partir des sources, utile en particulier pour le portage sur une nouvelle architecture).

Ajout des modules PCI manquants dans l'image de bootstrap.

Par korli, PulkoMandy, waddlesplash

Documentation

Ce trimestre, il y a principalement du travail sur la documentation interne. Il s'agit d'un document destiné aux développeurs de Haiku, par opposition aux développeurs d'applications pour Haiku, qui se tourneront plutÎt vers le Haiku book pour les informations sur les interfaces publiques du systÚme.

Mise à jour de la documentation sur la procédure à suivre pour synchroniser du code avec d'autres systÚmes. Haiku réutilise du code de FreeBSD, NetBSD, OpenBSD, musl et quelques autres, et maintient également deux copies de gcc et des binutils. Il est important d'avoir une procédure bien définie pour tracer ce qui a été importé, depuis quelle version, et quels changements ont été effectués. Plusieurs documentations existaient avec différentes fçons de faire, dont certaines étaient obsolÚtes.

Dans la documentation du device manager, ajout d'une image montrant un exemple de device tree, pour mieux visualiser ce qui est expliqué dans la page.

Déplacement d'articles sur l'implémentation des appels systÚmes du site web principal vers la documentation interne (dans le cadre d'un trÚs long projet pour réorganiser la documentation et libérer le site principal de nombreux articles techniques pour en faire une vitrine plus orientée vers les utilisateurs).

Ajout dans la documentation interne d'un article sur le profilage et l'analyse de performance des applications.

Correction de liens internes morts dans la documentation interne sur la gestion des paquets, suite Ă  des erreurs de formatage.

Mise Ă  jour de la documentation interne sur le processus de bootstrap.

Par kuku929, oco, PulkoMandy, waddlesplash

Commentaires : voir le flux Atom ouvrir dans le navigateur

  •  

ActualitĂ© : Écran OLED et mat : Acer l'a fait sur ce PC portable de moins d'un kilogramme et on l'a pris en main

Acer pourrait avoir fabriquĂ© le PC portable pour les utilisateurs nomades qui travaillent en extĂ©rieur ou simplement pour ceux qui veulent profiter d’une terrasse tout en rĂ©seautant.Une dalle OLED tactile et surtout mateLe Swift Edge 14 AI d’Acer embarque une dalle tactile OLED de 14 pouces affichant 2880x1800 pixels, des caractĂ©ristiques pour le moi...

  •  

LXQt 2.2.0

Le bureau LXQt est sorti le 17 avril 2025 en version 2.2.0. Comme prévu depuis la version 2.0, le développement est centré sur le confort : améliorations du support Wayland et ergonomie.
Pour mémoire, LXQt est un environnement de bureau fondé sur Qt, issu du rapprochement de deux projets, Razor-qt et LXDE, et publié sous licence GPL.

Le support de Wayland est encore meilleur, particuliĂšrement en multi-Ă©crans oĂč on utilise des noms d’écrans plutĂŽt que des nombres (appelez vos Ă©crans mieux ça fera sourire Miou-Miou). En outre vous pourrez utiliser les derniĂšres versions stables des compositeurs Wayland.

Niveau ergonomie, le gestionnaire de fichiers PCManFM-Qt accepte les terminaux personnalisĂ©s, le terminal QTerminal est encore plus lisible et tous les deux amĂ©liorent plein de petits trucs puisque c’est dans les dĂ©tails que ça se cache. Dernier point notable, les utilisateurs de portables peuvent crĂ©er des profils d’énergie pour mieux gĂ©rer la batterie.

Pendant ce temps-là LXDE est abandonné.

Commentaires : voir le flux Atom ouvrir dans le navigateur

  •  

Actualité : Fuites d'eau : le petit boßtier connecté Konyks Osafe veut vous éviter de gros dégùts

La marque Konyks, spécialisée dans la domotique et que l'on connaßt déjà pour ses prises connectées ou ses détecteurs de fumée, vient de d'annoncer la mise en vente de son boßtier Osafe, un détecteur connecté de fuites d'eau et d'inondations. Le but est de proposer un appareil permettant de prévenir les dégùts domestiques liés à l'eau, qu'il s'agisse...

  •  

Test Lenovo IdeaPad Slim 5 : un PC portable abordable qui cache bien son jeu

L’IdeaPad Slim 5 de Lenovo est un PC portable Ă  usage bureautique, qui embarque une puce Qualcomm Snapdragon X Plus dans un chĂąssis de 14 pouces. Petit plus, il est Ă©quipĂ© d’une dalle Oled pour profiter de vos contenus vidĂ©o, le tout pour un prix infĂ©rieur Ă  1000 â‚Ź. ## PrĂ©sentationEn provenance de Lenovo, nous avons l’habitude de tester les modĂšles Y...

  •  

AYANEO 3

Qu’il s’agisse de la SLIDE avec clavier intĂ©grĂ© ou de la KUN avec son Ă©norme Ă©cran 8,4 pouces, la start-up chinoise AYANEO cherche toujours Ă  se distinguer de la concurrence. Aujourd’hui, elle est l’une des premiĂšres Ă  emboĂźter le pas de Valve en distribuant une console-PC portable Ă  base d’écran OLED, mais puisque AYANEO ne fait rien comme tout le monde, elle intĂšgre aussi la plus rĂ©cente puce d’AMD – le Ryzen AI 9 HX 370 – et des contrĂŽles modulaires interchangeables.
  •  

Logiciels libres pour la comptabilité d'entreprise

OĂč l’on s’essaie Ă  dresser un panorama des logiciels comptables libres. À l’origine de cette dĂ©pĂȘche, une recherche d’un logiciel de paye libre oĂč il a semblĂ© que cela pouvait ĂȘtre utile.

Il s’agit bien de logiciels de comptabilitĂ© pour un usage professionnel ou associatif, pas de gestion de finances personnelles qui ont fait l’objet d’une autre dĂ©pĂȘche il y a quelque temps. Évidemment, il n’y a aucune prĂ©tention Ă  l’exhaustivitĂ©, mais plus Ă  donner un panel de logiciels avec quelques idĂ©es pour choisir le vĂŽtre, le cas Ă©chĂ©ant. N’hĂ©sitez pas Ă  les essayer quand c’est possible et Ă  croiser les informations pour vous faire votre opinion. Les fiches sont succinctes, mais c’est l’occasion pour vous d’écrire plein de nouvelles dĂ©pĂȘches puisque la plupart de ces logiciels n’ont pas eu de prĂ©sentations rĂ©centes sur LinuxFr.org.
Image d’illustration

    Sommaire

    Entrons tout de suite dans le vif du sujet. Voici des courtes prĂ©sentations avec des points forts et des points faibles qui se dĂ©gagent des expĂ©riences des rĂ©dacteurs et rĂ©dactrices. Pour vous aider Ă  faire un choix, cette liste est suivie d’explications plus gĂ©nĂ©rales.

    Compta.libremen.com

    logo compta libremen
    Compta libremen com est un logiciel de compta en partie double, simple et efficace. Il utilise une interface web sans fioritures. Le logiciel est Ă©crit en Perl et s’appuie sur Postgresql et mod_Perl, avec un serveur Apache. Un fork amical fournit une image Docker et quelques amĂ©liorations. Libremen propose une offre en ligne.
    Commentaires de l’auteur recueillis par courriel : on a un peu d’aide Ă  la saisie, il y a les raccourcis claviers (calcul du numĂ©ro de piĂšce, recopie de la ligne prĂ©cĂ©dente) et aussi les fenĂȘtres dĂ©roulantes pour les numĂ©ros de compte, plus le fait que le navigateur enregistre les derniĂšres saisies ; je crois avoir documentĂ© toutes les fonctions, la documentation est dite “minimum”, le logiciel est minimaliste par essence, donc la doc aussi :-)

    Interface web
    Aide Ă  la saisie oui
    Saisie au km oui
    IntĂšgre documents TVA, export FEC
    Comptabilité en partie double
    ComptabilitĂ© analytique oui, champ “Libre”
    Imports écritures en CSV
    Exports écritures en CSV
    Transmission automatisée non
    En réseau oui, et aussi sur Internet
    Documentation oui, minimum
    Forum non

    Diacamma

    logo Diacamma
    Le logiciel existe en deux versions, Diacamma Asso pour les associations et Diacamma Syndic pour les copropriétés. Diacamma utilise une interface web, avec un serveur intégré. Un installeur est fourni pour Windows, macOSX et Linux (Debian conseillée). Le CHATONS Sleto propose une offre en ligne.

    Interface web
    Aide Ă  la saisie oui
    Saisie au km non
    IntÚgre achats, ventes, factures, adhérents, documents et +
    Comptabilité en partie double
    Comptabilité analytique oui, simplifiée
    Imports écritures comptables, articles, contacts
    Exports écritures en CSV
    Transmission automatisée non
    En réseau oui, et aussi sur Internet
    Documentation oui, complĂšte
    Forum restreint aux connectés, gratuit
    • Points forts : le facturier qui permet aussi de faire des statistiques des ventes et d’éditer des factures et des reçus, le rĂ©capitulatif Ă  gauche de l’écran, une vision comptable par « journaux auxiliaires Â».
    • Points faibles : les fenĂȘtres modales pour les Ă©critures, la saisie par « journal auxiliaire Â» qui alourdit le processus, le vocabulaire pas trĂšs adaptĂ© au secteur.
    • Licence : GNU General Public License 3
    • Site : https://www.diacamma.org/

    Dolibarr

    logo Dolibarr
    Dolibarr est un puissant ERP pour tous types d’entreprises et d’associations. Il existe des prĂ©-sĂ©lections des modules nĂ©cessaires Ă  votre activitĂ©. Dolibarr utilise une interface web avec des serveurs web et SQL. Un installeur est fourni pour Windows et des paquets pour plusieurs distributions Linux. Beaucoup d’offres d’hĂ©bergement existent. Il rĂ©unit une forte communautĂ©, surtout francophone. Le dĂ©veloppement est trĂšs actif.
    Notez qu’on parle souvent de Dolibarr sur LinuxFr.org et qu’un journal sur une migration d’ERP a produit des interventions de haut niveau.

    Interface web
    Aide Ă  la saisie oui
    Saisie au km
    IntĂšgre achats, ventes, factures, adhĂ©rents, documents, stock, et plein d’autres
    Comptabilité simplifiée ou en partie double
    Comptabilité analytique oui
    Imports écritures comptables
    Exports des journaux, du Grand Livre, et des écritures sous différents formats
    Transmission automatisée
    En réseau oui, et aussi sur Internet
    Documentation oui, complĂšte
    Forum oui
    • Points forts : il est possible d’ajouter des extensions avec le magasin d’application, le dolistore. Dolibarr est Ă©galement disponible chez certains hĂ©bergeurs Ă  travers Softaculous. Une gestion fine des droits par groupe d’utilisateurs et par utilisateurs. Avec certains droits rĂ©servĂ©s aux utilisateurs internes c’est-Ă -dire ceux qui ne sont ni client ni fournisseur.
    • Points faibles : l’aspect « usine Ă  gaz Â» de Dolibarr et sa prise en main qui peut ĂȘtre ardue.
    • Licence : GNU GPL V3 et plus
    • Site : http://www.dolibarr.org
    • Dolibarr sur LinuxFr.org.

    Ekyagri

    logo Ekyagri
    Une solution en ligne de gestion d’exploitation agricole.

    Interface web
    Aide Ă  la saisie oui
    Saisie au km
    IntĂšgre achats, ventes, factures,
    Comptabilité en partie double
    Comptabilité analytique oui
    Imports écritures comptables
    Exports
    Transmission automatisée
    En réseau oui, et aussi sur Internet
    Documentation oui, complĂšte
    Forum oui
    • Points forts : la facilitĂ© de la saisie des Ă©critures, la gestion des immobilisations, sa conception bien pensĂ©e pour le secteur. L’aide est bien faite, elle indique notamment des niveaux de difficultĂ©s des tĂąches. On peut la tĂ©lĂ©charger au format PDF.
    • Points faibles : le site n’est pas trĂšs clair sur la rĂ©cupĂ©ration des donnĂ©es. On n’a pas de module de recherche sur l’aide en ligne et rien n’est indiquĂ© sur les sauvegardes.
    • Licence : AGPL v3
    • Site : https://ekylibre.com/ekyagri/

    ENDI

    logo endi

    Interface web
    Aide Ă  la saisie oui
    Saisie au km
    IntĂšgre achats, ventes, factures,
    Comptabilité en partie double
    Comptabilité analytique oui
    Imports écritures comptables
    Exports
    Transmission automatisée
    En réseau oui, et aussi sur Internet
    Documentation oui, complĂšte
    Forum oui

    ERPNext / Dokos

    Titre de l’image
    Un puissant ERP créé en Inde, le fork Dokos est la version française. Écrit en Python et JavaScript au-dessus d’une base Postgresql. Modulaire, il se positionne comme Odoo (voir ci-dessous). Comparons-les : l’interface est plus austĂšre, la renommĂ©e moindre entraĂźne peu de contributeurs tiers Ă  proposer des modules, l’équipe est plus petite, mais tout aussi dynamique, ERPNext Ă©volue vite, il est basĂ© sur le framework FRAPPÉ qui est stable et permet d’extraire les applications de l’ERP, l’ensemble est intĂ©gralement libre.

    Interface web
    Aide Ă  la saisie oui
    Saisie au km
    Intùgre achats, ventes, factures, documents, stock et plein d’autres modules
    Comptabilité en partie double
    Comptabilité analytique oui
    Imports écritures comptables
    Exports écritures en CSV
    Transmission automatisée
    En réseau oui, et aussi sur Internet
    Documentation oui, complĂšte
    Forum oui

    Frappebook

    Logo FrappeBook
    MĂȘme Ă©quipe qu’ERPNext. C’est juste le morceau comptable d’ERPNext, refait en application de bureau et portable par dessus SQLite. Pour les petites entreprises.

    • Points forts : Application portable, on peut l’emmener sur sa clef USB. L’interface est sobre et bien finie.
    • Points faibles : au lancement on se retrouve dans une compta anglo-saxonne, il faut paramĂ©trer pour avoir une compta “europĂ©enne”.
    • Licence : GNU General Public Licence version 3
    • Site : https://frappebooks.com/
    • Code source : https://github.com/frappe/books

    Galette

    Titre de l’image
    Sous le nom sympathique et tarabiscotĂ© de Galette (Gestionnaire d’AdhĂ©rents en Ligne ExtrĂȘmement TarabiscotĂ© mais Tellement Efficace) se cache un logiciel Ă  destination des associations.

    Interface web
    Aide Ă  la saisie oui
    Saisie au km
    IntÚgre achats, ventes, factures, adhérents
    Comptabilité simplifiée ou en partie double
    Comptabilité analytique oui
    Imports écritures comptables
    Exports
    Transmission automatisée
    En réseau oui, et aussi sur Internet
    Documentation oui, complĂšte
    Forum oui
    • Points forts : Il est trĂšs facile Ă  prendre en main, en comptabilitĂ© simple ou double. Il y a une aide en ligne copieuse ainsi qu’une liste d’entraide. Le logiciel propose plusieurs plans comptables (Au moins deux pour les plans comptables français et d’autres pour la plupart des pays europĂ©ens). On peut aussi ajouter son propre plan comptable. Il offre des fonctionnalitĂ©s de comptabilitĂ© analytique. On peut utiliser sa propre instance, rĂ©cupĂ©rer la base de donnĂ©es ou exporter la comptabilitĂ© sous divers formats (CSV, FEC, ODS et XLSX). Il est possible d’importer une comptabilitĂ© dans ces formats. Le logiciel est en constante Ă©volution, avec un dĂ©veloppeur trĂšs rĂ©actif. Des modules permettent de gĂ©rer aussi les paiements en ligne (puisque c’est aussi un logiciel de gestion de facturations et de clients). Il y a un module PdV (point de vente, caisse).
    • Points faibles :
    • Licence : GNU General Public Licence version 3
    • Site : https://galette.eu/site/fr/
    • Code source : https://github.com/galette/galette
    • Galette sur linuxFr.org.

    GnuCash

    logo GnuCash
    GnuCash figure dans la bibliothĂšque logicielle de la plupart des distributions Linux. C’est un logiciel qui fait aussi bien la comptabilitĂ© personnelle que la comptabilitĂ© professionnelle. Il propose des fonctionnalitĂ©s de CRM de base : gestion des adresses des clients et des fournisseurs.

    Interface Bureau (Gtk)
    Aide Ă  la saisie oui
    Saisie au km
    IntĂšgre
    Comptabilité en partie double
    Comptabilité analytique oui
    Imports écritures comptables
    Exports
    Transmission automatisée
    En réseau
    Documentation oui, complĂšte
    Forum oui
    • Points forts : on peut paramĂ©trer des Ă©critures rĂ©pĂ©titives (paiements mensuels par exemple) et le logiciel vous le rappelle dans des dĂ©lais fixĂ©s par vous Ă  l’ouverture. Sa bibliothĂšque de rapports (ou Ă©tats) est riche : bilan, comptes de rĂ©sultat, portefeuille d’action, facture, quittance, graphiques. Et c’est personnalisable souvent. Les rapprochements bancaires se font avec prĂ©-affectation des comptes grĂące Ă  de l’infĂ©rence bayĂ©sienne.
    • Points faibles : Il n’y a pas de plan comptable intĂ©grĂ©, il faut l’ajouter. Ni de fonctionnalitĂ© d’import d’un plan comptable (ou alors, je n’ai pas trouvĂ©), pas de comptabilitĂ© analytique, non plus. Il n’est pas complĂštement traduit en français et la traduction est un peu Ă©tonnante parfois. La prise en main n’est pas Ă©vidente.
    • SystĂšmes d’exploitation : Windows, MacOS, GNU/Linux, Unixes
    • Interface : graphique
    • Licence : GNU General Public License Version 2 ou Version 3
    • Site : https://gnucash.org/
    • Code source : https://sourceforge.net/projects/gnucash/
    • GnuCash sur linuxFr.org (dĂ©pĂȘches anciennes).

    Grisbi

    logo Grisbi
    Un logiciel qui fonctionne tout seul et qui est souvent fourni dans les distributions Linux. Il est surtout utilisable pour les finances personnelles, mais il propose un mode comptabilitĂ© libĂ©rale et peut ĂȘtre utilisĂ© par des micro-entreprises.

    Interface Bureau (GTK-3)
    Aide Ă  la saisie oui
    Saisie au km
    IntĂšgre achats, ventes, factures,
    Comptabilité en partie double
    Comptabilité analytique oui
    Imports écritures comptables
    Exports
    Transmission automatisée
    En réseau oui, et aussi sur Internet
    Documentation oui, complĂšte
    Forum oui
    • Points forts : il n’est pas compliquĂ© Ă  installer, on peut importer des fichiers au format CSV (Ă©videmment) mais aussi aux formats QIF, OFX et Gnucash. Pour les rapprochements bancaires, soit dit en passant, choisir le format QIF c’est encore celui qui fait le mieux le travail. Et on peut l’exporter au format QIF ou CSV. Deux formats souvent utilisĂ©s par les logiciels de comptabilitĂ©. Il propose un pratique simulateur de crĂ©dit. Il est assez facile Ă  prendre en main. Quand on fait un rapprochement bancaire, pour une comptabilitĂ© personnelle, en bout de course, on a une bonne partie des Ă©critures comptables qui sont saisies.
    • Points faibles : pas de comptabilitĂ© analytique, pas de compte de rĂ©sultat ni de bilan et, Ă©videmment, il n’est pas possible d’éditer des factures. L’interface GTK avait quelques bugs sous Windows (il y a plusieurs annĂ©es, peut-ĂȘtre corrigĂ©s depuis), comme des menus dĂ©roulants qui empĂȘchent de valider un formulaire tant qu’on a pas cliquĂ© Ă  cĂŽtĂ© pour les fermer.
    • Logiciel inspirĂ© de l’ex MsMoney (qui n’est plus vendu par Microsoft)
    • Licence : GNU General Public License Version 2
    • Site : https://fr.grisbi.org/
    • Code source : https://github.com/grisbi/grisbi
    • Grisbi sur LinuxFr.org.

    Laurux

    logo Laurux

    Laurux intĂšgre les outils classiques de gestion d’entreprise : comptabilitĂ©, facturation, gestion de stock et tous les composants nĂ©cessaires aux prises de dĂ©cisions cohĂ©rentes. DĂ©veloppĂ© en Gambas avec Qt Ă  destination des PME, son auteur a aussi voulu crĂ©er un logiciel simple d’installation et d’utilisation livrĂ© avec toute la documentation utile. L’auteur fournit une attestation individuelle de conformitĂ©, obligatoire dans la loi française. Son forum communautaire est accueillant.

    Interface Bureau (Qt)
    Aide Ă  la saisie oui
    Saisie au km
    IntĂšgre achats, ventes, factures, point de vente
    Comptabilité en partie double
    Comptabilité analytique oui
    Imports écritures comptables
    Exports plein de formats
    Transmission automatisée
    En réseau oui, et aussi sur Internet
    Documentation oui, complĂšte
    Forum oui
    • Points forts : Logiciel multiposte performant et fiable. Gestion de la compta, des stocks et achats/devis/factures trĂšs simples. Se prend en mains sans trop de complication. Et des dĂ©veloppeurs prĂ©sents, c’est hyper important de souligner le travail de Patrick et Damscot. Pour ĂȘtre plus large, j’ai, par le passĂ©, utilisĂ© Adicom, EBP, l’AS400 (une usine Ă  gaz de fou ce logiciel), et un autre systĂšme dans le nĂ©goce Ă©galement. Avec Laurux, je retrouve les avantages de l’AS400 sans avoir les complications d’utilisation.
    • Points faibles :
    • Licence : GNU General Public Licence version 3
    • Site : https://www.laurux.fr/
    • Code source :
    • Laurux sur LinuxFr.org.

    Ledger

    Avatar de Ledger
    Ledger est un outil en ligne de commande, qu’on nourrit avec de simples fichiers textes. La puissance de la ligne de commande en fait tout l’intĂ©rĂȘt. DĂ©veloppĂ© en C++ il a Ă©tĂ© portĂ© sur de nombreux autres langages. Ledger ne fait que la comptabilitĂ© en partie double. Plusieurs extensions facilitent son utilisation, sans entraver la rapiditĂ© de saisie.

    Interface Console (terminal)
    Aide Ă  la saisie oui
    Saisie au km
    IntĂšgre
    Comptabilité en partie double
    Comptabilité analytique oui
    Imports écritures comptables
    Exports
    Transmission automatisée
    En réseau oui, et aussi sur Internet
    Documentation oui, complĂšte
    Forum oui
    • Points forts : AdaptĂ© pour les compte-rendus, donc en complĂ©ment d’un autre logiciel. Il est super puissant car facilement scriptable.
    • Points faibles : Par contre, il a trĂšs peu de garde-fous. On peut mettre n’importe quelle transaction, il ne dira rien. J’avais dans l’idĂ©e de faire des scripts pour automatiser/sĂ©curiser des transactions classiques (dĂ©penses sur une clef, vente d’un lot, etc.) mais j’ai arrĂȘtĂ© d’ĂȘtre syndic bĂ©nĂ©vole avant de le faire (marre de courir aprĂšs les impayĂ©s d’un copropriĂ©taire)
    • Licence : BSD
    • Site : https://www.ledger-cli.org/
    • Code source : https://github.com/ledger/ledger

    Noalyss (autrefois PHPCompta)

    logo Noalyss
    Au dĂ©part centrĂ© sur la compta, Noalyss est devenu un logiciel de gestion d’entreprise trĂšs complet. Noalyss utilise une interface web avec des serveurs web et Postgresql. Des paquets et une procĂ©dure d’installation existent pour Linux, Windows et MacOSX. Activement dĂ©veloppĂ© en Belgique, sa communautĂ© importante est conviviale.

    Interface web
    Aide Ă  la saisie oui
    Saisie au km ?
    IntĂšgre achats, ventes, factures, stock, documents, etc.
    Comptabilité en partie double
    Comptabilité analytique oui
    Imports écritures comptables
    Exports
    Transmission automatisée ?
    En réseau oui, et aussi sur Internet
    Aide docu, wiki, tutos
    Communauté forum, liste

    Odoo

    logo Odoo

    Odoo est un puissant ERP, modulaire, utilisĂ© par des micro-entreprises comme des multinationales. L’entreprise Odoo connaĂźt une croissance rapide depuis vingt ans, et emploie plus de 2000 personnes dans le monde. Le fondateur d’Odoo poste rĂ©guliĂšrement des dĂ©pĂȘches annonçant les nouvelles versions d’Odoo sur LinuxFr.org, et un journal sur une migration d’ERP a produit des interventions de haut niveau. Odoo est Ă©crit en Python et utilise Postgresql, son interface est Ă©crite en XML et Javascript. Il est facile Ă  installer.

    Interface web
    Aide Ă  la saisie oui
    Saisie au km
    Intùgre achats, ventes, factures, stocks, documents et plein d’autres modules
    Comptabilité en partie double
    Comptabilité analytique oui
    Imports écritures comptables
    Exports
    Transmission automatisée
    En réseau oui, et aussi sur Internet
    Documentation oui, complĂšte
    Forum oui
    • Points forts : L’interface est uniformisĂ©e, ergonomique et soignĂ©e. Le dĂ©veloppement est intense depuis plus de vingt ans, appuyĂ© sur l’entreprise Odoo et une large communautĂ© d’intervenants et d’utilisateurs. Des milliers de modules sont disponibles. Documentation facile Ă  lire, complĂ©tĂ©e par un forum et un grand nombre de sites, vidĂ©os et livres. ÉnormĂ©ment d’intĂ©grations Ă  des services d’État ou privĂ©s. La communautĂ© s’est regroupĂ©e dans l’OCA Odoo Community Association qui maintient les anciennes versions et dĂ©veloppe des centaines de modules libres de haute qualitĂ©. L’OCA propose aussi un outil de montĂ©e de versions.
    • Points faibles : L’Apps Store Odoo est de qualitĂ© trĂšs diverse, certains modules ne sont pas libres, pour installer la comptabilitĂ© libre française, il faut s’y retrouver entre plusieurs modules. C’est plus simple pour les pays anglo-saxons.
    • Licence : GNU General Public Licence version 3 et propriĂ©taire
    • Site : https://www.odoo.com
    • Code source : https://github.com/odoo/odoo
    • Odoo sur LinuxFr.org.

    OpenConcerto

    logo OpenConcerto
    OpenConcerto est un progiciel de gestion intĂ©grĂ©e (PGI ou ERP). Sa cible : les entreprises, grandes ou petites. C’est une application java Ă  installer sur chaque poste utilisateur. Guillaume Maillard, son auteur, est un vieil habituĂ© de LinuxFr.org.

    Interface Bureau (version Web prévue en 2023)
    Aide Ă  la saisie oui
    Saisie au km oui
    IntĂšgre achats, ventes, factures, stock, paye, documents
    Comptabilité en partie double
    Comptabilité analytique oui
    Imports écritures comptables
    Exports FEC (DGFIP), EBP, Sage, Relation experts (Coala), Quadratus, Cegid CCMX
    Transmission automatisée SEPA
    En réseau oui, et aussi sur Internet
    Documentation oui, complĂšte
    Forum oui
    • Points forts : la comptabilitĂ© est facile Ă  prendre en main. Il y a une version pour macOS (ce qui est Ă  relever compte tenu de la raretĂ© des logiciels comptables pour ce systĂšme d’exploitation). S’agissant d’un progiciel de gestion intĂ©grĂ©e : il y a aussi des fonctionnalitĂ©s de gestion commerciale, de suivi des stocks et de prĂ©paration des commandes. Plusieurs modules complĂ©mentaires existent comme un module d’OCR qui permet, Ă  partir d’une facture numĂ©risĂ©e, de la saisir automatiquement dans le logiciel, ou bien un module de paye (seul module payant) : fiches de paye, journaux de paye et dĂ©clarations.
    • Points faibles : c’est trĂšs complet et donc un peu complexe pour une micro-entreprise. Certaines fonctionnalitĂ©s manquent de clartĂ© et d’exemples d’utilisation. La lecture du guide de dĂ©marrage ou du manuel (79€) est conseillĂ©e. L’équipe de dĂ©veloppement manque de temps pour discuter sur les Ă©volutions mais rĂ©pond gĂ©nĂ©ralement aux questions qu’on lui pose sur le forum. Les donnĂ©es ne sont pas stockĂ©es de la mĂȘme maniĂšre entre la version monoposte (un fichier H2) et multiposte (Postgresql). Bien choisir au dĂ©but, sinon il sera difficile de changer.
    • Licence : GNU General Public Licence version 3
    • Site : https://www.openconcerto.org
    • Code source : https://code.openconcerto.org/listing.php?repname=OpenConcerto
    • OpenConcerto sur LinuxFr.org.

    Paheko (ex Garradin)

    Logo de Paheko

    Un logiciel principalement destinĂ© aux associations, qui peut aussi ĂȘtre utilisĂ© par des micro-entreprises. On l’utilise via un navigateur, il y a mĂȘme une application pour mobile. C’est un logiciel complet de gestion d’association : membres, cotisation, comptabilitĂ©, communication.

    Interface web
    Aide Ă  la saisie oui
    Saisie au km
    IntĂšgre achats, ventes, factures,
    Comptabilité en partie double
    Comptabilité analytique oui
    Imports écritures comptables
    Exports
    Transmission automatisée
    En réseau oui, et aussi sur Internet
    Documentation oui, complĂšte
    Forum oui
    • Points forts : il est trĂšs facile Ă  prendre en main, il y a une aide en ligne copieuse ainsi qu’une liste d’entraide. Le logiciel propose cinq plans comptables (associatif 1999 et 2018, Plan Comptable GĂ©nĂ©ral (PCG), ComitĂ©s Sociaux et Économiques, copropriĂ©tĂ©s et plan comptable belge). On peut aussi ajouter son propre plan comptable. Il offre des fonctionnalitĂ©s de comptabilitĂ© analytique. On peut utiliser sa propre instance, rĂ©cupĂ©rer la base de donnĂ©es ou exporter la comptabilitĂ© sous divers formats (CSV, FEC, ODS et XLSX). Il est possible d’importer une comptabilitĂ© dans ces formats. Et, il est en constante Ă©volution avec un dĂ©veloppeur trĂšs rĂ©actif.
    • Points faibles : pas de lettrage, pas de gestion directe des Ă©critures pĂ©riodiques.
    • Licence : GNU Alfredo General Public Licence version 3
    • Site : https://paheko.cloud
    • Code source : https://fossil.kd2.org/paheko/doc/trunk/doc/index.md
    • Paheko sur LinuxFr.org, cherchez aussi Ă  Garradin.

    Tryton

    logo Tryton
    Tryton est un puissant ERP pour entreprises de toutes tailles. Il est accessible via un client Web, une application native ou bien une ligne de commande en Python. L’application cliente est dispo pour Windows, Mac et Linux, le serveur est empaquetĂ© pour plusieurs distributions Linux. Comme Odoo dont il est un fork, Tryton est basĂ© sur une architecture trois tiers Ă©crite en Python (et un peu de ECMAScript version 6) avec PostgreSQL comme base de donnĂ©es. Les auteurs nous parlent rĂ©guliĂšrement de Tryton sur LinuxFr.org.

    Interface Bureau, Web, Console
    Aide Ă  la saisie oui
    Saisie au km oui
    IntĂšgre achats, ventes, factures, stock, projet, etc.
    Comptabilité en partie double
    Comptabilité analytique oui
    Imports CSV, AEB43, CODA, OFX ou CAMT.053
    Exports FEC ou CSV
    Transmission automatisée Chorus, SEPA
    En réseau oui, et aussi sur Internet
    Documentation oui
    Forum oui
    • Points forts : L’interface est uniformisĂ©e, une fois comprise on s’y retrouve quel que soit le module. Un grand choix de modules permet de couvrir tout type d’activitĂ©. On peut tout paramĂ©trer, ajouter des champs, en masquer, adapter des modules
 Le dĂ©veloppement est trĂšs actif, la fondation Tryton rassemble beaucoup d’entreprises et de projets, dont GNU Health. Les montĂ©es de version sont prises en charge automatiquement.
    • Points faibles : L’interface est austĂšre, il y a un trĂšs grand nombre d’options. C’est difficile Ă  prendre en main sans ĂȘtre accompagnĂ© (mais c’est normal).
    • Licence : GNU General Public Licence version 3
    • Site : https://www.tryton.org/
    • Code source : https://www.tryton.org/download#source
    • Tryton sur LinuxFr.org.

    D’autres listes, d’autres articles

    Bien entendu, il manque plein de logiciels. On s’est limitĂ© Ă  ceux qu’on a pu tester. Si ce petit rĂ©sumĂ© ne vous suffit pas ou n’est plus Ă  jour, voici des sites avec des listes complĂ©mentaires (merci d’indiquer en commentaire si vous en connaissez d’autres).

    Alors, un logiciel de comptabilitĂ© pour quoi faire ?

    Avant tout pour faciliter la saisie comptable, fastidieuse quand elle est faite sur du papier (ou des tablettes de cire Ă  l’origine !). Toutes les formes de comptabilitĂ© demandent une rigueur, des connaissances, du calcul et du temps — c’est un mĂ©tier. Le logiciel comptable facilite tout ça.
    Mais aussi pour l’automatisation du suivi comptable, c’est-Ă -dire la production automatique de synthĂšses lisibles et comprĂ©hensibles. Vous pensez peut-ĂȘtre au bilan, mais on a couramment besoin de consulter toutes les dĂ©penses Ă©lectriques ou toutes les recettes de pub sur LinuxFr.org. On a aussi besoin d’envoyer pĂ©riodiquement ces synthĂšses Ă  l’administration, comme la transmission des recettes de TVA.
    Enfin, la comptabilitĂ© enregistre toutes sortes d’opĂ©rations, produites par d’autres logiciels spĂ©cialisĂ©s (salaires, fabrication, factures, etc.). IntĂ©grer tout cela dans un mĂȘme outil permet de gagner du temps et d’éviter les fautes de frappe (une facture gĂ©nĂšre automatiquement les Ă©critures comptables correspondantes). Ça donne des logiciels plus ou moins touffus, certains intĂ©grant toute la gestion d’entreprise, voire tous les outils de travail de l’entreprise — on les nomme ERP (ou PGI en français).

    Note sur les ERP ou PGI

    Quand SAP et les AS400 rĂ©gnaient en maĂźtre sur ce domaine, les ERP Ă©taient exclusivement de trĂšs gros logiciels intĂ©grant non seulement la gestion et la comptabilitĂ©, mais aussi la production, la vente, le dĂ©cisionnel, etc. La forte adaptation aux processus de l’entreprise via un paramĂ©trage puissant, Ă©tait leur gros atout et justifiait un coĂ»t d’installation trĂšs Ă©levĂ©. On en est mĂȘme venu Ă  appeler «SAP» ce type de logiciels.
    La langue Ă©voluant sans cesse, de nos jours on appelle ERP tout logiciel intĂ©grant la gestion, le point de vente, la compta et deux trois outils de moindre importance, tandis qu’on les nommait autrefois «logiciels de gestion». Mais la puissance n’est pas la mĂȘme (le besoin de formation non plus !). On a donc essayĂ© de distinguer dans la liste un puissant ERP paramĂ©trable et adaptable aux processus de l’entreprise, d’un logiciel intĂ©grant les outils de gestion.

    Quel logiciel de comptabilitĂ© adopter ?

    Comme on va le voir, il y a beaucoup de critĂšres, des vĂ©rifications, des questions Ă  se poser. Les articles dĂ©jĂ  mentionnĂ©s de LWN.net montrent assez bien les implications de vos choix. Si vous avez de quoi faire adapter l’outil Ă  vos besoins, choisissez un ERP, puissant ou non.

    Quel logiciel sĂ©lectionner pour sa comptabilitĂ© ? Ça dĂ©pend.

    Ça dĂ©pend de votre statut fiscal, lequel est dĂ©terminĂ© par votre chiffre d’affaires sauf dans certains cas prĂ©cisĂ©s par la loi, et ça dĂ©pend si vous voyez la comptabilitĂ© comme un outil de gestion ou une obligation fiscale. Vous pouvez donc tenir une comptabilitĂ© pour des raisons fiscales, pour des raisons lĂ©gales ou pour des raisons pratiques (ou les trois). Mais pour les mĂȘmes raisons, vous pouvez tenir diffĂ©rentes formes de comptabilitĂ© :

    1. une comptabilitĂ© dite recettes-dĂ©penses, semblable Ă  votre budget familial, trĂšs courante dans les associations regroupant des bĂ©nĂ©voles et ne vendant rien (un cahier suffit) ;
    2. une comptabilitĂ© simplifiĂ©e, dite de trĂ©sorerie, Ă  peu prĂšs semblable Ă  la premiĂšre : vous classez les opĂ©rations bancaires, et vous rentrez les factures de vos fournisseurs, elle est classiquement permise par l’administration pour de faibles chiffres d’affaires ;
    3. une comptabilitĂ© en partie double, fiable et difficile, inventĂ©e par les marchands il y a quelques millĂ©naires pour mieux gĂ©rer leurs entreprises ;
    4. une comptabilité analytique, qui complique les deux précédentes, mais permet de suivre trÚs précisément les dépenses et recettes affectées à une opération, et perfectionne donc la gestion.

    Sauf la premiĂšre, ces comptabilitĂ©s s’appuient sur une classification conventionnelle des opĂ©rations qu’on appelle le [plan comptable]]. Celui-ci varie selon les pays et votre statut juridique. L’utilisation du Plan comptable permet de produire les synthĂšses mentionnĂ©es plus haut — du calcul de la TVA au Bilan d’exercice.
    Il y a des plans comptables tout prĂȘts, adaptĂ©s Ă  des activitĂ©s particuliĂšres (comme les associations), mais tous dĂ©rivent d’un Plan comptable plus gĂ©nĂ©ral. Votre logiciel doit permettre d’importer ou de crĂ©er le Plan comptable souhaitĂ©.

    En passant, sachez qu’il y a des types de comptabilitĂ©, et que leur choix ne permet pas de suivre les mĂȘmes choses. Par exemple, le monde anglo-saxon suit plutĂŽt les finances tandis que le Vieux Continent suit plutĂŽt les biens. Mais lĂ , on rentre dans des dĂ©bats de professionnels qu’il n’est pas nĂ©cessaire d’aborder, d’autant que les frontiĂšres (comptables) bougent en ce moment. VĂ©rifiez ce qui est permis auprĂšs de l’administration. Reposons notre question prĂ©alable en y rĂ©pondant du point de vue pratique :

    Quel logiciel sĂ©lectionner pour sa comptabilitĂ© ? Ça dĂ©pend. Bis.

    Rappelons que beaucoup de logiciels ne se limitent pas Ă  la comptabilitĂ© pure, mais intĂšgrent d’autres outils utiles Ă  la gestion (graphiques des recettes, gestion de cotisations, Ă©dition de factures, transmission automatisĂ©e aux administrations, etc.). Et attention, les Ă©crans de saisie proposĂ©s dans les logiciels sont des aides dont un utilisateur expĂ©rimentĂ© se passe trĂšs bien.

    La comptabilitĂ© est une obligation, c’est peut-ĂȘtre obscur, fastidieux, vous la faites Ă  reculons, mais la vie est ce qu’elle est, nous sommes dans le systĂšme, il faut donc y passer, chaque jour, semaine, annĂ©e
 Alors le meilleur choix, passe aussi par la facilitĂ© d’installation, les couleurs, la facilitĂ© de prise en main, etc.

    Tout dépend donc surtout de vous :

    • si vous avez besoin d’aides Ă  la saisie ou non,
    • si vous prĂ©fĂ©rez des outils intĂ©grĂ©s,
    • si un outil intĂ©grĂ© dĂ©diĂ© Ă  votre activitĂ© est un plus pour vous,
    • si votre statut fiscal impose une compta en partie double,
    • si vous la faites rĂ©guliĂšrement pour la gestion de votre structure,
    • si vous avez besoin d’exporter les donnĂ©es pour votre expert-comptable (vĂ©rifiez les formats possibles avec lui),
    • si vous voulez un outil en rĂ©seau, voire en ligne sur internet,
    • si vous avez dĂ©jĂ  utilisĂ© un logiciel et que vous vous y retrouvez.

    NB Si qui peut le plus, peut le moins, sachez toutefois rester modestes si vous manquez de temps et de compĂ©tences, parce que les outils intĂ©grĂ©s demandent une certaine maĂźtrise. Eh oui ! plus vous intĂ©grez de trucs, plus il faut remplir et paramĂ©trer les trucs avant d’utiliser la partie comptable. Par exemple, sur le cas simple d’une vente, avec un outil intĂ©grĂ© il faudra avoir créé les produits, leurs taxes, le client, son bon de commande et les moyens de paiements avant d’attaquer la partie comptable.

    Attention aux obligations fiscales françaises (utilisĂ©es lors d’un contrĂŽle fiscal)

    En application du 3° bis du I de l'article 286 du Code gĂ©nĂ©ral des impĂŽts (CGI), toute personne assujettie Ă  la taxe sur la valeur ajoutĂ©e (TVA) qui effectue des livraisons de biens et des prestations de services Ă  destination de clients particuliers et qui enregistre les rĂšglements reçus en contrepartie au moyen d’un logiciel ou d’un systĂšme de caisse, est tenue d’utiliser un logiciel ou un systĂšme qui satisfasse aux conditions d’inaltĂ©rabilitĂ©, de sĂ©curisation, de conservation et d’archivage des donnĂ©es en vue du contrĂŽle de l’administration fiscale.

    Tous les dĂ©tails dans l’article du Bulletin Officiel des Finances Publiques - ImpĂŽts (BOFIP) TVA - RĂ©gimes d’imposition et obligations dĂ©claratives et comptables - Obligations d’ordre comptable - Obligation d’utilisation de logiciels ou systĂšmes de caisse sĂ©curisĂ©s

    Format Fichier des Écritures Comptables (FEC)

    Fichier texte tabulaire de 18 champs délimités par barres verticales ou par tabulations, ayant un nommage et un encodage précis ou éventuellement au format XML. Ce format est utilisé par la DGFiP pour pouvoir faire un contrÎle automatisable de la comptabilité. Elle fournit un utilitaire de validation de format pour Windows.

    Les points de vente

    En France, la loi « anti-fraude Â» de 2016 et l’article 286 du Code des impĂŽts imposent une certification des logiciels de caisse (c’est-Ă -dire des points de vente qui collectent des espĂšces) pour Ă©viter les trucages de la comptabilitĂ© via modifications du code-source. Ah ben alors fini le libre ? Mais non mon bon, les logiciels libres sont autorisĂ©s, on en a beaucoup parlĂ© sur LinuxFr.org. Toutes les structures n’y sont pas tenues, typiquement il faut ĂȘtre assujetti Ă  la TVA.
    NB Depuis la loi de finance 2018, article 105, les logiciels de comptabilitĂ© n’ont pas Ă  ĂȘtre certifiĂ©s.

    Si vous avez encore des doutes, consultez la FAQ en français facile Ă©crite par l’équipe de Dolibarr.

    La gestion de la paie

    On n’en a pas beaucoup parlĂ© alors que cette dĂ©pĂȘche a commencĂ© avec la recherche d’un logiciel de paie libre. Disons tout de suite qu’il est prĂ©fĂ©rable de s’appuyer sur des professionnels, en effet la gestion de la paye repose sur trois piliers :

    1. la fiche de paie et les déclarations afférentes
    2. l’émission et la conservation sĂ©curisĂ©e de la fiche de paie
    3. la saisie comptable

    Certains logiciels ont des modules de gestion des payes (OpenConcerto pour la paie française, Odoo pour plusieurs pays
). L’avantage est de faciliter les Ă©critures comptables. Mais attention, la gestion de la paye impose un suivi juridique et un suivi des taux des cotisations, car le cadre lĂ©gal varie selon les professions, les salaires et varie aussi dans le temps. Cette actualisation permanente est faite par les professionnels (comptables et experts comptables). Sauf Ă  bien connaĂźtre votre profession ou Ă  ĂȘtre dans un cadre relativement simple (par exemple celui des intermittents du spectacle en France), vous gagnerez du temps, de l’argent et de la « lĂ©galitĂ© Â» en passant par des professionnels. Les options les plus courantes sont de choisir un cabinet d’expertise comptable ou un service en ligne (nettement moins cher). Lisez ou relisez les commentaires du forum.

    S’agissant de la saisie et du traitement comptable de la paie, n’importe quel logiciel de comptabilitĂ© peut le faire, les logiciels de paye Ă©tant souvent susceptibles de mĂącher le travail Ă  ce niveau-lĂ .

    Commentaires : voir le flux Atom ouvrir dans le navigateur

    •  

    Raspberry Pi 5, évolution ou révolution ?

    Les mĂ©andres de l'espace de rĂ©daction sont parfois mystĂ©rieux. La rĂ©daction de certaines dĂ©pĂȘches s'Ă©talent parfois sur de long mois, parfois sans mĂȘme comprendre pourquoi la dĂ©pĂȘche ne part pas vers le stade de la publication. C'est ce qui est arrivĂ© Ă  cette dĂ©pĂȘche qui ne suit donc pas autant qu'elle aurait pu l'actualitĂ© de la sortie de la nouvelle mouture de la microcarte de la Fondation Raspberry Pi, qui porte le nom trĂšs original de Raspberry Pi 5. Cette dĂ©pĂȘche - qui nous offre une comparaison de cette nouvelle Ă©dition avec son illustre ancĂȘtre ainsi qu'une investigation de ses nouveautĂ©s - reste substantielle et il nous a semblĂ© qu'il valait mieux la publier mĂȘme tardivement plutĂŽt que de la plonger dans l'oubli Ă©ternel.

      Sommaire

      Cette dĂ©pĂȘche ne traitera pas de l’ensemble de ce que l’on peut faire, la prĂ©cĂ©dente dĂ©pĂȘche sur les SoC faite pour la sortie de la Raspberry Pi 4 est toujours d’actualitĂ© en ce qui concerne ces sujets.

      Comparaison entre Raspberry Pi 4 et Raspberry Pi 5

      Sorti en 2019, le RPi4 avait fait forte impression—mais quasiment en constante pĂ©nurie entre 2020 et 2023, il commençait par accuser le coup par rapport Ă  la concurrence du Rockchip RK3588 (Quad-core Cortex-A76 + Quad-core Cortex-A55).

      Aussi, la Raspberry Pi 5 introduit des avancĂ©es significatives par rapport Ă  la Raspberry Pi 4, dont le Tableau 1 prĂ©sente une synthĂšse des diffĂ©rences.

      Composants Raspberry Pi 4 Raspberry Pi 5
      SoC Broadcom BCM2711 Broadcom BCM2712
      CPU Quad-core Cortex-A72 (1.8 GHz) Quad-core Cortex-A76 (2.4 GHz)
      GPU VideoCore VI (500 MHz) VideoCore VII (800 MHz)
      Mémoire 1, 2, 4, 8 GB LPDDR4-3200 SDRAM 4, 8 GB LPDDR4X-4267 SDRAM
      Wi-Fi Dual-band 802.11ac Dual-band 802.11ac
      Bluetooth 5.0, BLE 5.0, BLE
      USB 2 USB 3.0, 2 USB 2.0, 1 Type-C port 2 USB 3.0, 2 USB 2.0, 1 Type-C port
      Stockage MicroSD MicroSD (SDR104âŸčR/W↗ˣÂČ) + ligne PCIe pour NVME M.2 SSD
      Ethernet Gigabit Ethernet Gigabit Ethernet
      Puissance Jusqu’à 7.5 W 2 modes : jusqu’à 15 W et jusqu’à 25 W
      Gestion HDMI 2 HDMI 2.0 (1 gĂ©rant 4k@60 Hz) 2 HDMI 2.0 (tous les deux gĂ©rant 4k@60 Hz)
      Format vidéo H.264 (AVC) H.265 (HEVC)
      PCIe Non 1 lane PCIe pour périphériques haute performance
      Bouton d’alimentation Non Oui

      Tableau 1 : comparatif des Raspberry Pi 4 et 5

      Détail des améliorations de la Raspberry Pi 5

      La Raspberry Pi 5 introduit des avancĂ©es significatives par rapport Ă  la Raspberry Pi 4, en particulier avec l’introduction du southbridge RP1. Voici une comparaison dĂ©taillĂ©e mettant en Ă©vidence les principales diffĂ©rences et l’impact du RP1 :

      • Processeur : La Raspberry Pi 5 est Ă©quipĂ©e d’un CPU ARM Cortex-A76, une amĂ©lioration substantielle par rapport au Cortex-A72 trouvĂ© dans la Raspberry Pi 4. Cette mise Ă  niveau fait que la Pi 5 est deux Ă  trois fois plus rapide que son prĂ©dĂ©cesseur.
      • RAM : La Raspberry Pi 5 utilise de la LPDDR4X-4267 SDRAM, nettement plus rapide que la LPDDR4-3200 SDRAM utilisĂ©e dans la Pi 4. Cette amĂ©lioration offre plus de bande passante, contribuant Ă  des performances globalement plus rapides.
      • Puissance graphique : La Raspberry Pi 5 dispose d’un GPU VideoCore VII plus puissant, cadencĂ© Ă  800 MHz et prenant en charge OpenGL ES 3.1 et Vulkan 1.2. C’est une avancĂ©e par rapport au GPU VideoCore VI de la Raspberry Pi 4, qui prend en charge OpenGL ES 3.1 et Vulkan 1.0. Le GPU de la Pi 5 comprend Ă©galement un nouveau processeur de signal d’image pour la gestion des donnĂ©es des camĂ©ras.
      • Chip RP1 Southbridge : La puce RP1 est une innovation majeure dans la Raspberry Pi 5. Elle agit comme un southbridge, gĂ©rant la plupart des fonctions I/O (entrĂ©e/sortie), rĂ©duisant ainsi la charge sur le CPU. Cela permet une augmentation de la bande passante I/O, bĂ©nĂ©ficiant aux dispositifs de stockage, USB et autres pĂ©riphĂ©riques.
      • Vitesse des cartes MicroSD : Le port microSD de la Pi 5 prend en charge le mode haute vitesse HDR 104 avec les cartes microSD UHS-1, offrant des vitesses de lecture de 80-90 Mbps, soit le double de la vitesse de 40-50 Mbps de la Pi 4.
      • Ports USB : Dans la Raspberry Pi 5, chacun des deux ports USB 3.0 dispose d’une bande passante dĂ©diĂ©e de 5 Gbps, grĂące Ă  la puce RP1. C’est une amĂ©lioration par rapport Ă  la Pi 4, oĂč les deux ports USB 3.0 partageaient la bande passante de 5 Gbps.
      • Connecteur PCIe : La Pi 5 inclut un connecteur PCIe (PCI Express), une nouvelle addition rĂ©pondant Ă  la demande pour des interfaces plus rapides. Cependant, l’interface PCIe de la Pi 5 n’est pas un connecteur M.2 standard ; elle nĂ©cessite un cĂąble ruban pour se connecter Ă  un HAT, et le dispositif M.2 se connectera au HAT. CaractĂ©ristiques
      • Un bouton marche/arrĂȘt : Eh oui, on est quand mĂȘme dans le 3ᔉ millĂ©naire ;-)
      • Alimentation : Tout comme la Raspberry Pi 4, la Raspberry Pi 5 utilise un connecteur d’alimentation au format USB Type-C. En revanche, doublement de la puissance oblige, la puissance nĂ©cessaire Ă  son fonctionnement passe de 7.5 W Ă  15 W, il faudra donc une alimentation en 3A minimum pour ĂȘtre tranquille. À noter que si vous souhaitez utiliser des pĂ©riphĂ©riques externes qui consomment beaucoup comme des disques durs ou SSD, il est conseillĂ© d’avoir une alimentation de 25 W (5A). La Raspberry Pi dĂ©tecte si l’alimentation fournit plus de puissance et passe la limite de consommation USB Ă  1,6A au lieu de 1,2A.

      Raspberry Pi 5 : Nouveau South Bridge RP1 vs Raspberry Pi 4

      Le RP1 est un contrĂŽleur d’entrĂ©e/sortie (I/O) conçu pour le Raspberry Pi 5, reprĂ©sentant le programme d’ingĂ©nierie le plus complexe et coĂ»teux entrepris par Raspberry Pi, avec un dĂ©veloppement s’étendant sur plus de sept ans et ayant coĂ»tĂ© environ 25 millions de dollars. Ce contrĂŽleur est le premier produit phare de Raspberry Pi Ă  utiliser une puce conçue en interne​.

      Architecture du South Bridge RP1

      — Description : Le RP1 est un southbridge de 12×12 mm avec un pas de 0.65 mm en BGA (Ball Grid Array), fournissant la majoritĂ© des capacitĂ©s d’E/S pour la Raspberry Pi 5.
      — CaractĂ©ristiques : Il comprend un point de terminaison PCIe 2.0 Ă  4 voies, un contrĂŽleur Ethernet MAC Gigabit et deux contrĂŽleurs hĂŽtes USB 3.
      — AmĂ©liorations : Plus du double de la bande passante USB utilisable par rapport Ă  la Raspberry Pi 4.
      — Documentation RP1 : RP1 Datasheet

      Sources des informations sur le RP1

      — L’article d’Eben Upton pour annoncer le RP1 : RP1 : the silicon controlling Raspberry Pi 5 (ce court article est accompagnĂ© d’une vidĂ©o YT de 35 minutes Ă  ce sujet, mais dont le contenu est reproduit textuellement en suivant un lien)
      — Lien direct vers la vidĂ©o YT : RP1 : the silicon controlling Raspberry Pi 5

      Impacts du RP1

      Le RP1 constitue une avancĂ©e importante, puisque les GPIOs “physiques” de la carte ne sont plus directement reliĂ©es aux GPIOs du microprocesseur et de leurs fonctions possibles (SPI/I2C/UART/I2S) attribuĂ©es par le fondeur dans le silicium.

      1. ConnectivitĂ© principale : Le RP1 se connecte Ă  un processeur d’application (AP) via un bus PCIe 2.0 x4, consolidant de nombreux contrĂŽleurs numĂ©riques et PHYs analogiques pour les interfaces externes du Raspberry Pi 5​​.
      2. ContrĂŽle du trafic : Le tissu interne du RP1 permet de prioriser le trafic en temps rĂ©el de la camĂ©ra et de l’affichage sur le trafic non en temps rĂ©el de l’USB et de l’Ethernet. Des signaux de qualitĂ© de service (QoS) sur le lien PCI Express soutiennent la priorisation dynamique entre le trafic provenant du RP1 et le trafic des maĂźtres de bus en temps rĂ©el et non en temps rĂ©el au sein de l’AP​​.
      3. FonctionnalitĂ©s supplĂ©mentaires : Pour une flexibilitĂ© maximale des cas d’utilisation, le RP1 dispose de plusieurs fonctionnalitĂ©s telles qu’un contrĂŽleur DMA Ă  huit canaux pour les pĂ©riphĂ©riques Ă  basse vitesse, trois PLL intĂ©grĂ©es pour la gĂ©nĂ©ration d’horloges vidĂ©o et audio indĂ©pendantes, un convertisseur analogique-numĂ©rique Ă  cinq entrĂ©es, 64kB de SRAM partagĂ©e, et des gĂ©nĂ©rateurs de base temporelle pour le rythme de la DMA ou pour le debouncing des Ă©vĂ©nements GPIO​​​​.
      4. Gestion des contrĂŽleurs de bus : Les modules de rĂ©gulation intĂ©grĂ©s Ă  chaque port de contrĂŽleur de bus permettent de surveiller ou de limiter leur comportement. Ces modules rĂ©gulent le flux de donnĂ©es selon le nombre de transactions en attente, assurent le respect des limites d’adresses AXI et PCIe, et disposent de compteurs statistiques pour Ă©valuer la qualitĂ© de service ou les performances.
      5. Interfaces clĂ©s externes : Le RP1 fournit des interfaces externes clĂ©s telles que deux contrĂŽleurs XHCI indĂ©pendants connectĂ©s Ă  un seul PHY USB 3.0 et un seul PHY USB 2.0, deux contrĂŽleurs de camĂ©ra MIPI CSI-2 et deux contrĂŽleurs d’affichage MIPI DSI connectĂ©s Ă  deux PHY transceivers MIPI DPHY Ă  4 voies partagĂ©es, et un contrĂŽleur d’accĂšs mĂ©dia (MAC) intĂ©grĂ© pour l’Ethernet Gigabit​​​​.
      6. CompatibilitĂ© et Ă©volution : Le RP1 maintient la compatibilitĂ© avec la gamme de fonctions offerte sur le Raspberry Pi 4 Model B, tout en permettant une Ă©volution vers des processus de gĂ©omĂ©trie rĂ©duite, sans avoir Ă  reproduire tous les Ă©lĂ©ments analogiques du systĂšme. Cela pourrait permettre Ă  changer plus facilement de fournisseur de SoC.

      Évolution des performances

      Afin de permettre de mieux visualiser les évolutions des performances Alasdair Allan a fait un benchmark complet dont certains éléments sont repris ici.

      Tout d’abord une analyse des performances du CPU avec geekbench. Les Figures 1 et 2 montrent une augmentation des performances en single core d’approximativement 2.2x,
      performances single core

      Figure 1. : Comparaison des performances single core entre RPi4 et 5
      performances multi core

      Figure 2. : Comparaison des performances multi core entre RPi4 et 5

      Compilation de différents benchmarks entre RPi 4 et 5

      Benchmark Unités Raspberry Pi 4 Raspberry Pi 5 Augmentation de Performance
      Sysbench Mono-Thread MBps 699 1041 x1,49
      Sysbench Multi-Thread MBps 2794 4165 x1,49
      Stress-ng Mono-Thread op/s 104,78 182,68 x1,74
      Stress-ng Multi-Thread op/s 413,12 737,21 x1,78
      Bzip Mono-Thread secondes 44,98 20,53 x2,19
      Bzip Multi-Thread secondes 28,59 14,36 x1,99
      Gimp Redimensionner secondes 67,01 29,95 x2,24
      Gimp Rotation secondes 77,24 32,77 x2,36
      Gimp Niveaux Auto secondes 80,52 34,64 x2,32
      Gimp Masque Flou secondes 115,16 49,71 x2,32
      Speedometer 2.1 score 20,5 62,5 x3,05
      Glmark2 score 97 202 x2,08
      Openarena Timedemo FPS 8,77 27,05 x3,08
      RAMspeed Écriture MBps 4391 29355 x6,69
      RAMspeed Lecture MBps 5902 27931 x4,73
      HDparm Lecture MBps 43,81 90,05 x2,06
      dd Écriture MBps 34,49 61,23 x1,78
      Iozone 4 K Écriture RAND MBps 9,38 15,22 x1,62
      Iozone 4 K Lecture RAND MBps 4,71 4,6 x0,98
      Temps de démarrage secondes 33,4 19,1 x1,74

      performances des I/O

      La Figure 3. issue du travail d’Adafruit permet de mettre Ă  jour le graphique sur la vitesse performance de la commutation des I/O proposĂ© dans la dĂ©pĂȘche sur la RPi4. La Figure 4. quant Ă  elle montre une lĂ©gĂšre amĂ©lioration de la performance par Watt sur le nouveau modĂšle.

      Titre de l’image
      Figure 3. Évolution de la vitesse de commutation d’une sortie numĂ©rique

      Titre de l’image
      Figure 4. Évolution de la performance en fonction de la puissance Ă©lectrique

      Interfaces USB et Ethernet

      — Interfaces: Le RP1 fournit deux interfaces USB 3.0 et deux interfaces USB 2.0, ainsi qu’un contrĂŽleur Ethernet Gigabit.
      — Source: Circuit Digest – The New Raspberry Pi 5 is here

      Le Gigabit Ethernet fourni par le RP1 est en tout point semblable Ă  celui du RBPi4 (voir : RP1 : the silicon controlling Raspberry Pi 5:

      Liam 13:21: So we’ve got the Ethernet MAC but not the PHY. So the Ethernet’s brought out to an RGMII interface, which then connects to an on-board Ethernet PHY.

      Eben 13:35: And this is a fairly similar architecture to Raspberry Pi 4, except that in that case, the MAC was in the Broadcom device, but there was still an external – in fact exactly the same external – PHY, [BCM]54213. Cool. So that’s the overall structure of the design.

      Interfaces MIPI CSI/DSI

      Ces interfaces d’entrĂ©e/sortie vidĂ©o peuvent ĂȘtre qualifiĂ©es d’historiques dans l’écosystĂšme RaspberryPi puisqu’elles sont prĂ©sentes depuis la version 1. Le RBPi5 apporte toutefois une nouveautĂ© assez remarquable par rapport Ă  ses prĂ©dĂ©cesseurs : au lieu d’avoir un port CSI (pour une camĂ©ra) et un port DSI (pour un Ă©cran), les ports du RBPi5 peuvent ĂȘtre configurĂ©s pour l’une ou l’autre fonction. Malheureusement, cela s’est traduit par des changements notables au niveau de la disposition des composants sur la carte, qui ne sont pas sans susciter quelques grincements de dents parmi les utilisateurs.

      Les points discutables/discutés

      Le réarrangement de la carte

      — Le port audio a disparu, pour laisser sa place au port MIPI DSI (qui peut faire CSI Ă  prĂ©sent), lui-mĂȘme remplacĂ©, au-dessus du lecteur de carte microSD, par un connecteur FPC exposant les lignes PCIe.
      — le port DSI est passĂ© de 15 pins Ă  22 pins (comme sur la carte CMIo4)
      — Et, encore une fois, les ports Ethernet et USB ont Ă©tĂ© inversĂ©s.

      Si cela ne pose pas de problÚmes particuliers pour un utilisateur lambda, de nombreux projets basés sur les cartes RasperryPi à la recherche de performance de calcul (et donc potentiellement intéressés par ce nouveau RBPi5) doivent entiÚrement revoir la conception de leur matériel.

      Le non réarrangement de la carte

      C’est un reproche que l’on peut trouver dans de nombreux tĂ©moignages : mettre un HAT (carte d’extension) sur un RBPi, juste au dessus du CPU, c’est un non-sens en termes de refroidissement (et ce, quelle que soit la version du RBPi).
      Mais, pour relativiser, on peut dire la mĂȘme chose de quasiment toutes les autres solutions alternatives au RBPi.

      Les limites du format carte de crédit

      Ce format (86x56 mm) est devenu une rĂ©fĂ©rence pour presque tous les acteurs du monde des SBC. Et donc, il s’agit lĂ  aussi d’un constat plus gĂ©nĂ©ral, non spĂ©cifiquement adressĂ© Ă  RaspberryPi. Mais sachant que ce sont les locomotives du marchĂ©, peut ĂȘtre pourraient-ils initier une nouvelle approche

      Certes, ce format permet d’élaborer des solutions compactes, mais l’on peut constater :

      — qu’augmenter la puissance et les fonctionnalitĂ©s des puces embarquĂ©es tout en restant sur ce format conduit Ă  un gaspillage inutile de ressources : il est en effet impossible d’implĂ©menter toutes les fonctionnalitĂ©s matĂ©rielles proposĂ©es par les puces sur une si petite surface, et par ailleurs il devient difficile de refroidir efficacement le systĂšme.
      — pour exposer le port PCIe, RaspberryPi a supprimĂ© le port audio, dĂ©placĂ© le port DSI ; mais pour alimenter le bouzin, il vous faut du 5V 4A. Ensuite un peu tout le monde se trouve plantĂ© lĂ  : dĂ©brouillez-vous.

      Commentaires : voir le flux Atom ouvrir dans le navigateur

      •  

      Information couleur du jour pour contrats électricité Tempo

      Suite Ă  une question posĂ©e en 2023, cette dĂ©pĂȘche propose un Ă©tat des lieux des sources librement accessibles (sans imposer un jeton pour accĂ©der aux API pour obtenir de maniĂšre structurĂ©e l’information) permettant de suivre les jours en tensions pris en compte dans l’option tarifaire TEMPO chez EDF. Cette option tarifaire consiste Ă  payer moins cher l’électricitĂ© Ă  condition de la payer 3 fois plus cher 22 jours dans l’annĂ©e : les jours en tensions, gĂ©nĂ©ralement durant l’hiver.

      Cette option permet de lisser la charge sur le rĂ©seau de transport de l’électricitĂ©. Pour faire bon usage de cette option, il faut surveiller la couleur du jour pour dĂ©terminer s’il vaut mieux rĂ©duire le chauffage Ă©lectrique et les autres sources de consommations Ă©lectriques. L’information est affichĂ©e le jour mĂȘme sur le compteur Ă©lectrique, mais il peut ĂȘtre utile d’ĂȘtre prĂ©venu. On peut consulter le site de EDF, mais il peut ĂȘtre plus intĂ©ressant de disposer d’une API pour rĂ©cupĂ©rer cette information, et ainsi pouvoir l’intĂ©grer dans un systĂšme domotique, par exemple.

        Sommaire

        Les anciennes APIs ne fonctionnent plus

        En effet, les forums domotiques attestent que c’était pourtant trĂšs utilisĂ©, depuis le 29/08/2024 (avant-veille du changement de saison Tempo) les URL concernĂ©es (resp. couleur du jour+lendemain et compteurs saison en cours) rĂ©pondent en erreur:

        Couleurs jour/lendemain
        Totaux en cours

        À la recherche d’une solution de remplacement

        On voit une autre URL apparaĂźtre ces derniers jours sur les forums, mais elle ne donne pas spĂ©cifiquement les couleurs jour/lendemain mais des compteurs: nombre de jours bleus, rouges et blancs depuis le dĂ©but de l’annĂ©e. Il faudrait donc dĂ©duire la couleur du jour en fonction de ce qui change d’un jour Ă  l’autre! On a vu plus simple, mais comme ça marche pas on ne risque pas de l’utiliser:
        URL nouvelle

        {
            “errors”: [],
            “content”: [
                {
                    “typeJourEff”: « TEMPO_BLANC Â»,
                    “libelle”: « TEMPO BLANC 2024 2025 Â»,
                    “nombreJours”: 43,
                    “premierJour”: « 2024-09-01 Â»,
                    “dernierJour”: « 2025-08-31 Â»,
                    “premierJourExclu”: null,
                    “dernierJourExclu”: null,
                    “nombreJoursTires”: 0,
                    “etat”: “OUVERTE”
                },
                {
                    “typeJourEff”: « TEMPO_BLEU Â»,
                    “libelle”: « TEMPO BLEU 2024 2025 Â»,
                    “nombreJours”: 300,
                    “premierJour”: « 2024-09-01 Â»,
                    “dernierJour”: « 2025-08-31 Â»,
                    “premierJourExclu”: null,
                    “dernierJourExclu”: null,
                    “nombreJoursTires”: 12,
                    “etat”: “OUVERTE”
                },
                {
                    “typeJourEff”: « TEMPO_ROUGE Â»,
                    “libelle”: « TEMPO ROUGE 2024 2025 Â»,
                    “nombreJours”: 22,
                    “premierJour”: « 2024-11-01 Â»,
                    “dernierJour”: « 2025-03-31 Â»,
                    “premierJourExclu”: null,
                    “dernierJourExclu”: null,
                    “nombreJoursTires”: 0,
                    “etat”: « NON_COMMENCEE Â»
                }
            ]
        }

        Le site d’EDF utilise une API interne indiquant la couleur, jour par jour, pour une plage de dates donnĂ©e. Il faut remplir quelques en-tĂȘtes HTTP pour que la requĂȘte soit acceptĂ©e :

        curl \
            'https://api-commerce.edf.fr/commerce/activet/v1/calendrier-jours-effacement?option=TEMPO&dateApplicationBorneInf=2023-9-12&dateApplicationBorneSup=2023-9-15&identifiantConsommateur=src' \
            -H 'accept: application/json, text/plain, */*' \
            -H 'cache-control: no-cache' \
            -H 'content-type: application/json'

        Exemple de réponse:

        {
            “errors”: [],
            “content”: {
                “dateApplicationBorneInf”: « 2023-09-12 Â»,
                “dateApplicationBorneSup”: « 2023-09-16 Â»,
                “dateHeureTraitementActivET”: « 2024-09-11T11:19:26Z Â»,
                “options”: [
                    {
                        “option”: “TEMPO”,
                        “calendrier”: [
                            {
                                “dateApplication”: « 2023-09-12 Â»,
                                “statut”: « TEMPO_BLEU Â»
                            },
                            {
                                “dateApplication”: « 2023-09-13 Â»,
                                “statut”: « TEMPO_BLEU Â»
                            },
                            {
                                “dateApplication”: « 2023-09-14 Â»,
                                “statut”: « TEMPO_BLEU Â»
                            },
                            {
                                “dateApplication”: « 2023-09-15 Â»,
                                “statut”: « TEMPO_BLEU Â»
                            }
                        ]
                    }
                ]
            }
        }

        Ces APIs semblent rĂ©pondre en erreur « La syntaxe de la requĂȘte est erronĂ©e » alĂ©atoirement lorsqu’on y accĂšde avec curl. Une requĂȘte peut fonctionner une fois puis subitement cesser de rĂ©pondre. S’agit-il d’une limitation du nombre de requĂȘtes venant de la mĂȘme IP? D’une authentification Ă  effectuer pour avoir le droit de faire des requĂȘtes? Ou juste d’un systĂšme complĂštement buggĂ© qui plante une fois sur 10?

        Pour ceux, que j’imagine nombreux, a qui cela va poser problĂšme et qui ne veulent (ou peuvent) obtenir l’info via un module tĂ©lĂ©info Ă  monter sur son compteur, il y a une URL dont je n’ai pas trouvĂ© rĂ©fĂ©rence sur le site de RTE (qui ne propose que des API Ă  jetons) qui se trouve en regardant le github source d’un site tiers donnant Ă©galement l’info:
        Source tierce

        L’info dĂ©livrĂ©e par le compteur arrive en prime bien plus tardivement: En dĂ©but de soirĂ©e au lieu de fin de matinĂ©e. C’est parce qu’elle transite par Enedis, une autre entreprise qui se charge de la distribution de l’électricitĂ© (les lignes Ă  basse tension et les compteurs Ă©lectriques).

        On peut donc utiliser cette indirection ou regarder les sources afin de trouver l’URL en question, pour laquelle on a une info hĂ©las bien plus verbeuse oĂč il faut faire son marchĂ© : on rĂ©cupĂšre un JSON de tous les jours Ă©coulĂ©s depuis le dĂ©but de la saison en cours, et il faut :

        — extraire l’info aux bonnes dates,
        — refaire ses compteurs de jours bleu/blanc/rouge pour savoir s’il reste des jours rouges ou blancs prĂ©vus avant la fin de l’hiver,
        — traiter le flag “fallback” qui, selon la documentation, indique un mode dĂ©gradĂ©, mais ce flag ne semble jamais ĂȘtre mis Ă  “true” dans l’historique des donnĂ©es disponibles, et son rĂŽle exact n’est pas clair.

        Conclusion

        Il est au final navrant qu’EDF remplace un truc simple qui marchait trĂšs bien par un machin alambiquĂ© qui tombe en marche une fois sur 10


        Je ne donne pas l’URL librement accessible, mais non documentĂ©e, de RTE car je n’aimerais pas qu’elle croule sous les demandes: Ceux qui sont capables de l’utiliser de maniĂšre raisonnĂ©e sans exploser des quotas sauront bien la trouver avec les infos donnĂ©es!

        (RTE, RĂ©seau de Transport de l’ÉlectricitĂ© est l’entreprise qui s’occupe du rĂ©seau Ă©lectrique Ă  haute tension en France. Ce sont eux qui dĂ©terminent les jours oĂč le rĂ©seau va ĂȘtre trĂšs chargĂ©, et c’est ça qui dĂ©termine le prix de l’électricitĂ©).

        Un avantage Ă  l’utiliser, c’est que l’info est disponible encore plus tĂŽt qu’elle ne l’était chez EDF (c’était gĂ©nĂ©ralement MAJ peu aprĂšs 11h00), permettant d’anticiper encore un peu plus un jour rouge, sachant qu’ils sont souvent en sĂ©rie, si on a quelques lessives Ă  lancer


        S’il y a des suggestions d’alternatives (sans jetons d’API) non citĂ©es, merci de les indiquer en commentaires.

        Commentaires : voir le flux Atom ouvrir dans le navigateur

        •  

        Sur les traces de la flotte fantĂŽme russe

        DĂ©but 2025, les États-Unis et l'Europe ont pris de nouvelles sanctions contre les exportations de pĂ©trole russe qui ciblent notamment des tankers. Depuis la mise en place du blocus Ă©conomique occidental contre Moscou en 2022, une toile d'entrepreneurs de l'ombre aide la Russie Ă  Ă©couler ses (...) / , , , - 2025/03
        •  

        À Santiago du Chili, avec les galĂ©riens des transports

        AprĂšs l'embrasement, il est parfois difficile d'expliquer le dĂ©part de feu. Au Chili, cela pourrait ĂȘtre l'augmentation soudaine du prix du ticket de mĂ©tro Ă  Santiago, la capitale. Elle a provoquĂ© une immense vague de protestations en 2019. Avant d'engendrer des transformations inimaginables quelques (...) / , , , , , , , - 2023/03
        •  

        Le Benghazi Medical Center, l'autre affaire libyenne de Nicolas Sarkozy

        30 millions d'euros et la mort d'un français sur fond de soupçons de corruption

        En plein procĂšs du financement libyen de la campagne 2007, Reflets rouvre une enquĂȘte sur une histoire mĂ©connue : 30 millions d'euros versĂ©s sur ordre de l'ElysĂ©e pour Ă©quiper l'hĂŽpital de Benghazi. Et dans cette affaire, il y a eu mort d'homme. Depuis nos rĂ©vĂ©lations en 2015, le Parquet national financier s'est saisi du volet corruption de ce dossier. Une audience est prĂ©vue en juin prochain.

        Vue de l'hĂŽpital de Benghazi - D.R.

        « M. GuĂ©ant a dit : il faut qu'on s'occupe de l'hĂŽpital de Benghazi. On s'en est occupĂ©s. Â» Cette phrase anodine, jetĂ©e en pleine sĂ©ance du tribunal ce lundi 20 janvier par Nicolas Sarkozy, a eu l’effet d’un coup de tonnerre sur les connaisseurs du dossier. À peine prononcĂ©e, elle a fait resurgir tout un pan du passĂ© trouble de la France en Libye, oĂč la libĂ©ration des infirmiĂšres bulgares sert de sordide toile de fond Ă  des intrigues franco-libyennes. Or ces intrigues oĂč l'argent de la France a coulĂ© Ă  flots ont coĂ»tĂ© la vie Ă  un Français, Patrice RĂ©al, le soir du 2 mars 2014 Ă  Benghazi. Qui s’en souvient ?

        Ce responsable de la sĂ©curitĂ© du fameux Benghazi Medical Center, 49 ans, employĂ© par un prestataire de la trĂšs controversĂ©e sociĂ©tĂ© française Ideal Medical Product Engineering (IMPE) est mort criblĂ© de balles, alors qu’il Ă©tait passager d’un minibus, de retour du souk de Benghazi. L’enquĂȘte -classĂ©e sans suite- n’a jamais permis de savoir qui Ă©taient les tueurs et surtout pourquoi cet homme apparemment sans histoire a Ă©tĂ© visĂ©. Sa mort a fait l’objet de quelques Ă©chos dans la presse, mais en 2014, personne ne s’était jamais inquiĂ©tĂ© de savoir qui il Ă©tait, ni d’oĂč il venait. Des rumeurs jamais confirmĂ©es Ă©voquaient un agent secret français. En 2015, avec Jacques Duplessy (nous sommes deux journalistes travaillant aujourd’hui pour Reflets), nous avions dĂ©nouĂ© les premiers fils de l’énigme, avec la conviction que le Benghazi Medical Center n...

        •  

        Vos batteries vont-elles exploser ?

        La faillite du suédois Northvolt douche les espoirs d'une filiÚre européenne des batteries. Elle interroge aussi la priorité accordée aux véhicules particuliers, alors que l'électrification ne présente des bénéfices environnementaux que pour les transports en commun, alimentés en continu par le réseau. (...) / , , - 2025/02
        •