Podman, volume et SELinux

En ce moment j’expérimente avec Rust, le langage de programmation à la mode. Ayant compilé mon programme expérimental sur mon système Fedora, je l’envoie à un ami. Quelle déception quand il me dit que mon programme répond mal :

/lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32' not `found

Rust compile avec la version de la librairie glibc de mon système, qui est trop récente et pas compatible avec Ubuntu. Je dois donc compiler avec un système plus ancien. Pas de panique les conteneurs sont parfaits pour ça !

Comme je travaille avec Fedora, j’utilise Podman qui est un équivalent à Docker pour créer mon conteneur.

Je tente ainsi, mais c’est l’échec :

% podman run --rm -v "$PWD":/usr/src/ -w /usr/src/ rust cargo build --release 
error: could not find `Cargo.toml` in `/usr/src` or any parent directory
zsh: exit 101   podman run --rm -v "$PWD":/usr/src/ -w /usr/src/ rust cargo build --release

D’où vient cette erreur ? Je tente de lire le répertoire depuis le conteneur :

% podman run --rm -v "$PWD":/usr/src/ rust ls /usr/src
ls: cannot open directory '/usr/src': Permission denied
zsh: exit 2     podman run --rm -v "$PWD …
plus ...

Apple, ARM et plateforme ouverte

Les nouveaux ordinateurs Apple basés sur le processeur M1 commencent à être testés par différents sites spécialisés en hardware. Le verdict est sans appel : c'est une claque de performance et efficacité sans précédent pour ses vénérables concurrents.

Une révolution ?

Est-ce l'avènement d'une nouvelle ère où nos smartphones et ordinateurs personnels utiliseront tous la même technologie ARM, que les smartphones utilisent depuis leurs débuts ?

Les smartphones ont envahi notre monde. Ils sont partout, et nécessaires pour de plus en plus d'opérations : validation d'opérations bancaires, paiements, tickets de transport, services de transport urbain, etc.

C'est une révolution encore plus forte que celle de l'ordinateur personnel, qui a généralisé l'accès à l'informatique et à Internet.

L'histoire bégaie

Il y a pourtant une différence majeure avec les ordinateurs personnels.

Au début de ceux-ci, de nombreux fabricants étaient en compétition, comme Amiga, Apple et Atari, avec des architectures et systèmes différents. Il n'y avait que peu d'interopérabilité entre les différents ordinateurs disponibles. Puis a emergé la plateforme PC, qui devint rapidement un standard de facto.

La grosse force de cette plateforme est son ouverture. Un système fonctionnant sur PC peut fonctionner sur tous les ordinateurs compatibles PC. La majorité des ordinateurs sont compatibles PC à …

plus ...

Changer la taille de police dans les applications Qt sous Xfce

En ce moment j’utilise Xfce comme environnement de bureau, pour soulager mon ordinateur portable âgé de sept ans qui fatigue un peu.

Comme je suis myope, je change toujours la taille des polices en changeant le DPI, pour le régler à 120. C’est facile à faire dans Xfce en utilisant le module « Apparence » du panneau de paramètres.

Mais dans certaines applications qui utilisent le framework Qt ce paramètre n’était pas toujours respecté. Après quelques recherches, j’ai trouvé qu’un moyen simple de changer l’apparence dans ces applications est d’utiliser le fichier ~/.Xresources. Ce fichier est utilisé par le serveur X pour configurer ses applications clientes.

Voici la configuration que j’ai utilisée :

!-------------------------------------------------------------------------------
! Xft settings
!-------------------------------------------------------------------------------

Xft.dpi:        120
Xft.antialias:  true
Xft.rgba:       rgb
Xft.hinting:    true
Xft.hintstyle:  hintslight
Xft.autohint:   false
Xft.lcdfilter:  lcddefault

Il faut ensuite utiliser la commande xrdb pour appliquer ces paramètres :

xrdb -merge ~/.Xresources

Et voilà, mes applications Qt comme KeepassXC ont la bonne taille de police !

plus ...

Mise à jour de PostGIS problématique et Fedora

Pour quelques uns de mes projets de développement, j'utilise PostGIS, une extension de la base de données PostgreSQL qui permet de gérer des données géographiques. PostgreSQL et PostGIS sont régulièrement mises à jour, ce qui m'occasionne parfois de sacrés maux de tête. Danc cet article j’explique comment j’ai réussi à me sortir d’une mise à jour difficile à l’aide des outils fournis par Fedora et des conteneurs.

Ciel, une mise à jour

Un changement de version majeure de PostgreSQL n'est pas une opération triviale, car elle nécessite toujours de convertir les bases de données du système, la compatibilité du schéma étant cassée entre chacune de versions majeures.

L'utilitaire pg_upgrade est utilisé pour cela, mais il est un peu compliqué à utiliser. Heureusement certaines distributions proposent des outils pour simplifier cette mise à jour. Par exemple sous Debian, la mise à jour du paquet d'une version majeure vers une autre entraîne une conversion automatique de la base de données. Sous Fedora, ça n'est pas automatique, mais un utilitaire est fourni pour aider à la mise à jour.

Cela se complexifie avec PostGIS, comme on va le voir tout de suite. J'ai donc récemment mis à jour ma …

plus ...

Configurer un résolveur DNS local avec Unbound sous Fedora

Résoudre le DNS

DNS est le protocole Internet qui permet d'associer un nom de domaine comme www.ezvan.fr à une adresse Internet. On utilise un résolveur DNS pour effectuer cette association, ce qui est nécessaire pour pouvoir naviguer sur le Web. Quand vous êtes connectés à votre box Internet, un résolveur DNS est automatiquement configuré par votre système.

Généralement il est fourni par votre fournisseur d'accès, qui peut donc contrôler les réponses qu'il fournit. Cela peut être un moyen de censurer certains sites Web, comme expliqué par cet article de Stéphane Bortzmeyer.

Aussi il peut arriver que votre connexion soit quelque peu mauvaise, rendant les allers-retours vers le résolveur de votre fournisseur relativement longs, ce qui ralenti de manière non négligeable le chargement des pages Web.

Installer un résolveur local

Ces deux problèmes sont une bonne raison d'utiliser son propre résolveur DNS. Il est possible d'en utiliser un sur sa machine, ce que nous allons décrire ici. La procédure est ici décrite pour Fedora, mais est similaire pour d'autres distributions Linux.

Unbound

Unbound est un résolveur DNS moderne et léger. On va utiliser ce logiciel comme résolveur local.

Dnssec-trigger

Dnssec-trigger est un démon qui permet d'intégrer Unbound avec NetworkManager …

plus ...