MakeMake The Dwarf Planet is a feed agregator.

Vérification de la syntaxe de certains fichiers de configuration

by ascendances from ascendances

Certains logiciels fournissent aussi la possibilité de vérifier la syntaxe des fichiers de configuration qu’ils utilisent. Cela permet d’éviter des erreurs ou interruptions de service dûes à une erreur dans le fichier. Voici trois exemples :

1. Apache

Apache2 fournit apachectl. Si la syntaxe des sites actifs est correcte, la sortie sera :

# apachectl -t
Syntax OK

Avec un fichier de configuration incorrect nommé conte.conf contenant

<VirtualHost a.oree.du.bois:80>
    ServerName le.grand.mechant.loup.example
    CustomLog /il/etait/une/fois combined
    RencontreChaperonRouge on
</VirtualHost>

la sortie sera 

# apachectl -t
[Sun Sep 18 22:18:32.305781 2022] [core:error] [pid 14382:tid 139846731306112] (EAI 2)Name or service not known: AH00547: Could not resolve host name a.oree.du.bois -- ignoring!
AH00526: Syntax error on line 4 of /etc/apache2/sites-enabled/conte.conf:
Invalid command 'RencontreChaperonRouge', perhaps misspelled or defined by a module not included in the server configuration
Action '-t' failed.
The Apache error log may have more information.

Attention, les vérifications d’apachectl ne sont pas exhaustives et une erreur peut encore survenir lors du redémarrage du serveur Apache. Ici le chemin vers le fichier n’existe pas mais n’a pas été détecté. Si apachectl -t détecte une erreur, il y a un problème. S’il n’en détecte pas, il n’y a peut-être pas de problème.

(test réalisé avec Apache/2.4.38)

2. OpenSSH

La commande sshd -t exécutée avec des droits root permet de vérifier la validité de la configuration du serveur openSSH (le fichier /etc/ssh/sshd_config sous Debian).
Si le fichier est correct, alors rien n’est affiché et la valeur de sortie est 0.
Avec un fichier sshd_config commençant par :

PetitPotDeBeurre on
Tartiflette off

La sortie sera :

# sshd -t
[sudo] password for stephane: 
/etc/ssh/sshd_config: line 1: Bad configuration option: PetitPotDeBeurre
/etc/ssh/sshd_config: line 2: Bad configuration option: Tartiflette
/etc/ssh/sshd_config: terminating, 2 bad configuration options

avec une valeur de sortie de 255.

(test réalisé avec OpenSSH_7.9p1, OpenSSL 1.1.1d)

3. Sudo

Si une erreur est faite dans le fichier /etc/sudoers qui empêche sa relecture par l’exécutable sudo, il devient impossible d’utiliser la commande sudo. visudo permet d’éviter ce désagrément.
Supposons que l’utilisateur ait ajouté à la ligne 12,

Hello           MereGrand

puis enregistre le fichier :

% sudo visudo
/etc/sudoers:12:25: erreur de syntaxe
Hello           MereGrand
^
Et maintenant ?

Lorsque le fichier est incorrect, trois choix sont possibles :

  • remodifier le fichier
  • quitter sans enregistrer
  • quitter en enregistrant (une déception pourrait arriver peu de temps après)

L’éditeur par défaut utilisé par visudo est vi. Cela est modifiable en paramétrant des variables d’environnement comme $EDITOR. (En réalité, c’est plus compliqué: il y a deux autres variables d’environnement possibles et deux variables de configuration de sudo permettent de modifier de comportement des éditeurs par défaut. man sudo si vous pensez que cette complexité a un intérêt dans votre cas.)

(testé avec visudo version 1.9.5p2, version de la grammaire de visudo : 48)

Faim de loup, fin d’article

Ces outils sont pratiques pour éviter de mettre un service en panne ou s’enfermer dehors. Ils sont complémentaires de vérificateur générique de syntaxe JSON, YAML, etc.

Lire la suite…

Last FOSS contributions from the Yaal Coop team (summer 2022)

by Éloi Rivard <eloi@yaal.coop> from Yaal

squeekboard

An on-screen-keyboard input method for Wayland

libcall-ui

User interface for Linux phone calls

Mozilla Web Docs

Documentation about web technologies, including CSS, HTML, and JavaScript

canaille

Simplistic OpenID Connect provider over OpenLDAP

Python

python-caldav

Debian Archive Kit (dak)

Programs used to maintain the Debian project's archives

Python2 will disappear

  • Removal of a workaround for older releases than 2.6 in Webtest
  • Documentation: removal of an example based on python2 in Honcho
  • Removal of python2.7 specific cases in setuptools
  • Removal python2 support in msgpack

tracker-miners

Data collectors for GNOME tracker

poetry

Tool for dependency management and packaging in Python

fhir-kindling

FHIR resource and synthetic data set creation and management tool

keyring_pass

Password Store (pass) backend for python's keyring

dnserver

Simple development DNS server

nextcloud-oidc-login

Nextcloud login via a single OpenID Connect 1.0 provider

Lire la suite…

Dernières contributions à des logiciels libres par l'équipe Yaal Coop (été 2022)

by Éloi Rivard <eloi@yaal.coop> from Yaal

squeekboard

Un clavier virtuel pour Wayland

libcall-ui

Interface utilisateur pour les appels téléphoniques sous Linux

Mozilla Web Docs

Documentation sur les technologies du web, dont CSS, HTML et Javascript

canaille

Serveur OpenID Connect simpliste, basé sur OpenLDAP

Python

python-caldav

Debian Archive Kit (dak)

Programmes utilisés pour maintenir les archives du projet Debian

Python2 finira par disparaître

  • Suppression d'un contournement pour les version antérieures à 2.6 dans Webtest
  • Documentation : suppression d'un exemple basé sur python2 dans Honcho
  • Suppression de cas spécifiques à python2.7 dans setuptools
  • Suppression de python2 dans msgpack

tracker-miners

Collecteurs de données pour GNOME Tracker

poetry

Outil pour la gestion des dépendances et des paquets en Python

fhir-kindling

Brique de connexion à des serveurs de ressources FHIR

keyring_pass

Connecteur Password Store (pass) pour python-keyring

dnserver

Serveur DNS simpliste pour le développement

nextcloud-oidc-login

Plugin OpenID Connect pour nextcloud

Lire la suite…

Purism Librem 5 software review : our list to Santa

by Éloi Rivard <eloi@yaal.coop> from Yaal

After several years of waiting, we just received our Librem 5 phone from Purism. The Librem 5 phone is a privacy-oriented phone which notable features are:

  • it uses PureOS, a GNU/Linux distribution based on Debian, instead of Android or iOS;
  • the interface is based on GNOME with a few modifications;
  • it has kill switches to physically disable wifi, bluetooth, cellular data, camera and microphone.

Running a Linux on a cellular phone enables new uses, especially for tech savvy, but it comes with its lot of drawbacks. The main notable ones is that Linux phones is a brand new field, and a lot of apps are simply 'not ready'. Either because their UI is not adaptive, because they have not been adapted to mobile user interactions (swiping and other gestures), or just because they have not been tested enough by users, so some actions feels convoluted.

FOSS developers do their best, and a whole lot of great work has been done so far. However we are not yet at a point where Linux phones can be put in the hands of a larger audience. With our fresh eyes of new Linux mobile users, we want to list here the main things that we felt were really missing to provide a good user experience (at least for our biased geeky use). We focused on GNOME Core and Circle apps, and mobile/Librem5 specific apps developed by Purism. What we expect from a phone is to:

  • place calls
  • receive and send SMS
  • receive and send emails
  • be used as an alarm clock
  • manage contacts
  • manage tasks
  • be used as a geolocation navigation device
  • browse the internet
  • play music
  • take photos
  • take notes
  • display documents
  • share internet connection
  • be used as a torchlight
  • discuss with people

As patching has even more value than reporting, this list could be used by us (or you?) as a to-do list for some day if we get bored.

We have tested the phone running PureOS byzantium, and we updated all the apps through Flatpak when possible so we could get the latest GNOME 42 fixes.

Blockers

In this category we put the issues we feel are very discouraging for a daily use. This mainly concerns UX friction and stress, and missing or broken features.

Comfort

In this category we put the issues that would improve our comfort. This mainly concern mobile UX improvements.

Sparkles

In this category we put everything else that we met during our test, from nice-to-have features to slight mobile UX improvements:

Lire la suite…

Revue logicielle du Librem 5 de Purism

by Éloi Rivard <eloi@yaal.coop> from Yaal

Après plusieurs années d'attente, nous venons de recevoir le Librem 5 que nous avions commandé chez Purism. C'est un téléphone orienté vie-privée dont les fonctionnalités notables sont :

  • l'utilisation de PureOS, une distribution GNU/Linux basée sur Debian, à la place d'Android ou iOS ;
  • l'interface graphique est GNOME avec quelques modifications ;
  • la présence de boutons permettant de physiquement éteindre le Wifi, le Bluetooth, les données mobiles, le microphone ou la caméra (c'est à dire couper l'arrivée électrique).

Utiliser Linux sur un téléphone mobile ouvre à de nouveaux usages qui concernent surtout des personnes technophiles, mais cela vient aussi avec son lot d'inconvénients. Les plus notables sont que les téléphones sous Linux sont quelque chose de nouveau, et les applications ne sont simplement pas prêtes : les interface ne sont adaptées aux écrans mobiles, les interactions pratiques sur un téléphone mobile (comme le glissement du pouce) ne sont pas utilisées, et plus généralement les applications n'ont pas encore été assez testées par des utilisateurs mobiles.

Les développeurs de logiciels libres font de leur mieux, et un sacré travail a déjà été fait. Cependant nous ne sommes pas encore à un point où les téléphones sous Linux peuvent être mis entre toutes les mains. Avec notre regard vierge (c'est la première fois que nous voyons un téléphone sous Linux), nous voulons lister ici ce que nous pensons qu'il manque à l'écosystème pour fournir un bonne expérience utilisateur (du moins pour notre usage biaisé de technophiles).

Nous nous sommes concentrés sur les applications GNOME Core et Circle, ainsi que sur les applications mobiles développées par Purism.

Ce que nous attendons d'un téléphone est qu'il nous permette de :

  • passer des appels
  • recevoir et envoyer des SMS
  • recevoir et envoyer des emails
  • être utilisé comme réveil
  • gérer ses contacts
  • gérer des listes de tâches
  • être utilisé comme un appareil de géolocalisation
  • naviguer sur internet
  • jouer de la musique
  • prendre des photos
  • prendre des notes
  • afficher des documents
  • partager sa connexion internet
  • être utilisé comme lampe-torche
  • discuter avec des gens

Comme produire des correctifs a encore plus de valeur que rapporter des bugs, cette liste pourrait nous servir de liste de tâches à faire si nous (ou vous ?) nous ennuyons un jour.

Nous avons testé le téléphone sous PureOS byzantium, et mis à jour les applications grâce à Flatpak quand c'était possible afin de bénéficier des avancées de GNOME 42.

Bloquants

Dans cette catégorie nous listons les problèmes qui nous découragent fortement pour une utilisation quotidienne. Cela concerne principalement du stress et de la friction dans l'expérience utilisateur, ainsi que des fonctionnalités manquantes ou inutilisables.

Confort

Dans cette catégorie nous lisons ce qui améliorerait notre confort. Cela concerne principalement les interfaces.

Paillettes

Dans cette catégorie nous listons toutes les autres choses que nous avons rencontrées, il s'agit surtout de petites améliorations d'interface et quelques fonctionnalités qui permettraient par exemple un usage hors-ligne.

Lire la suite…

Dernières contributions à des logiciels libres par l'équipe Yaal Coop (début 2022)

by Éloi Rivard <eloi@yaal.coop> from Yaal

Ces derniers mois nous avons principalement contribué à canaille, le serveur d'identité que nous développons, ainsi que le menu d'autocomplétion simple-svelte-autocomplete et le greffon nextcloud-oidc-login qui permet à nextcloud de se connecter à des serveurs d'identité.

wtforms

Bibliothèque python de gestion de formulaires web

canaille

Serveur OpenID Connect simpliste, basé sur OpenLDAP

webtest

Bibliothèque de tests unitaires pour applications web

nextcloud

Logiciel de partage et de synchronisation de fichiers

nextcloud-oidc-login

Plugin OpenID Connect pour nextcloud

ansible

Outil d'automatisation des déploiements

simple-svelte-autocomplete

Composant svelte de suggestion d'éléments dans une liste déroulante

fhir-kindling

Brique de connexion à des serveurs de ressources FHIR

Debian

Lire la suite…

Last FOSS contributions from the Yaal Coop team (winter 2022)

by Éloi Rivard <eloi@yaal.coop> from Yaal

Those last months we mainly worked on canaille, our identity server, as well as the autocompletion menu simple-svelte-autocomplete and nextcloud-oidc-login that allows nextcloud to connect to identity servers.

wtforms

A flexible forms validation and rendering library for Python.

canaille

Simplistic OpenID Connect provider over OpenLDAP

webtest

Wraps any WSGI application and makes it easy to send test requests to that application, without starting up an HTTP server.

nextcloud

Nextcloud server, a safe home for all your data

nextcloud-oidc-login

Nextcloud login via a single OpenID Connect 1.0 provider

ansible

simple IT automation platform

simple-svelte-autocomplete

Simple Autocomplete / typeahead component for Svelte

fhir-kindling

FHIR resource and synthetic data set creation and management tool

Debian

Lire la suite…