
Pour que les applications installées en flatpak respectent la configuration de votre curseur (thème et taille), il faut leur autoriser l’accès à ~/.icons
.
C’est dans ~/.icons
que la configuration du curseur (taille et apparence) est définie.
Exemple avec Dino :
flatpak --user override im.dino.Dino --filesystem=${HOME}/.icons/:ro
Une autre solution, possiblement meilleure, consiste à créer un lien symbolique de ~/.local/share/icons
vers ~/.icons
:
ls -s ~/.icons ~/.local/share/icons
Il semble en effet que la plupart des flatpak ont déjà accès à ce répertoire.
Publié le 19 mars 2025
Tout lire
Cheatsheet Git
Un tag pointe vers un numéro de commit.
git tag v1.0 # tag le commit actuel
git push origin v1.0 # push le tag sur le remote
git tag -d v1.0 # supprime le tag
git push origin -d v1.0 # supprime sur le remote
git push origin --tags # push tous les tags
git tag v0.9 hash_ancien_commit # cree un tag d'un ancien commit
stash
“stasher” permet de mettre de côté le travail pour réorganiser le dépot.
(main) git stash # nos modifs sont mises de coté et disparaissent de la branche courante
(main) git branch test-feature # nouvelle branche
(main) git checkout test-feature
(test-feature) git stash pop # nos modifs reviennent sur la nouvelle branche
(test-feature) git add, git commit ...
cloner une branche spécifique
git clone -b nom_branche url
grep dans l’historique
git grep "du texte a rechercher" $(git rev-list --all)
Affiche le commit et le fichier de chaque occurence, suivis par la ligne qui contient le texte recherché.
revenir en arrière …
Publié le 18 mars 2025
Tout lire
Résoudre les blocages du serveur NFS sous Debian 12 (nfsd stuck in D state)
Si vous utilisez nfs-kernel-server
avec le noyau Linux par défaut sous Debian 12 (6.1.94 au moment de l’écriture de cet article), vous avez peut-être constaté des blocages du serveur.
En cas de forte charge, il se peut que tous les threads nfsd
passent en état D
(uninterruptible sleep) et n’en sortent jamais.
Lorsque cela se produit, vous ne pouvez rien faire : tenter de tous les tuer avec kill -9
ou d’arrêter les services nfs (nfs-server
, rpcbind
etc) ne rédoudra rien.
La seule chose à faire est alors de redémarrer l’OS… ce qui rend indisponible quelques minutes d’autres services parfaitement fonctionnels sur le serveur (Samba par exemple).
Le bug peut arriver assez fréquemment, jusqu’à plusieurs fois par semaine si le serveur est beaucoup sollicité.
Dans un premier temps, on peut penser qu’il n’y a pas assez de threads nfsd pour répondre à la demande.
Il …
Publié le 13 mars 2025
Tout lire
Il n’est pas rare de vouloir exécuter un programme et d’obtenir une erreur du type :
libxxx.so: /lib/x86_64-linux-gnu/libstdc++.so.6: version GLIBCXX_3.4.32 not found (required by .../libxxx.so)
La libstdc++ est fournie par gcc (le compilateur GNU).
Pour trouver la version de gcc qui fournit la version GLIBCXX qui vous manque, vous pouvez vous référer à son ABI.
Dans mon exemple, l’ABI indique qu’il faut installer gcc 13.2.0 minimum.
Malheureusement, cette version n’est pas installable avec apt sous Debian 12.
Je vais donc compiler moi-même gcc et la bibliothèque dans un répertoire séparé des bibliothèques du système, puis exécuter le programme en lui indiquant d’aller y chercher les bibliothèques.
La compilation peut prendre une trentaine de minutes (la durée varie selon la puissance de votre machine).
Elle peut être effectuée en suivant les étapes suivantes :
-
Télécharger le code source de gcc …
Publié le 28 février 2025
Tout lire
… ou tout autre périphérique de son USB non reconnu !
Ce microphone USB, supposément plug-and-play n’est pas reconnu nativement sous Linux.
J’ai essayé sous Debian, sous Arch et sous Fedora : même résultat.
Même sous Windows, rien n’est détecté !
Il est pourtant détecté par le noyau (sudo dmesg -Tw
pour voir les messages du noyau en direct) :
[Sun Feb 16 12:23:24 2025] usb 2-1.1: new full-speed USB device number 14 using ehci-pci
[Sun Feb 16 12:23:24 2025] usb 2-1.1: New USB device found, idVendor=0d8c, idProduct=0134, bcdDevice= 1.00
[Sun Feb 16 12:23:24 2025] usb 2-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[Sun Feb 16 12:23:24 2025] usb 2-1.1: Product: USB PnP Audio Device
[Sun Feb 16 12:23:24 2025] usb 2-1.1: Manufacturer: C-Media Electronics Inc.
[Sun Feb 16 12:23:24 2025] hid-generic 0003:0D8C:0134.000C: No inputs registered, leaving
[Sun Feb 16 12:23:24 2025] hid-generic …
Publié le 16 février 2025
Tout lire
Comprendre l’audio sous Linux
Cet article est aussi disponible en vidéo 👇
Problématique du son
Gérer du son pour un ordinateur, c’est simplement acheminer des données binaires aux bons endroits : d’une application à la carte son, ou dans l’autre sens.
La carte son, c’est le périphérique capable de convertir les données binaires en audio et vice-versa.
Pour que le système soit capable de parler à la carte son dans une langue qu’elle comprend, il lui faut un driver.
Ce driver, sous Linux, c’est ALSA : Advanced Linux Sound Architecture.
Multiplexage
ALSA peut être utilisé tout seul pour permettre à une application d’émettre ou de recevoir de l’audio.
Par exemple, VLC est tout à fait capable de s’adresser à ALSA.
En revanche, avec ALSA la carte son ne peut être utilisée que par une application à la fois.
Si VLC utilise la …
Publié le 5 décembre 2024
Tout lire
Les versions récentes du noyau Linux (apparemment 6.5+) ne reconnaissent pas correctement ces cartes réseau qu’on peut acheter par exemple chez HPE.
En Linux 6.2, aucun souci.
Messages d’erreur type dans dmesg :
Nov 29 13:04:29 pve2-xxx kernel: bnxt_en 0000:12:00.0 (unnamed net_device) (uninitialized): Device requests max timeout of 100 seconds, may trigger hung task watchdog
Nov 29 13:04:29 pve2-xxx kernel: bnxt_en 0000:12:00.0 eth0: Broadcom BCM57416 NetXtreme-E 10GBase-T Ethernet found at mem de610000, node addr aa:bb:cc:dd:ee:11
Nov 29 13:04:29 pve2-xxx kernel: bnxt_en 0000:12:00.0: 63.008 Gb/s available PCIe bandwidth (8.0 GT/s PCIe x8 link)
Nov 29 13:04:29 pve2-xxx kernel: bnxt_en 0000:12:00.1 (unnamed net_device) (uninitialized): Device requests max timeout of 100 seconds, may trigger hung task watchdog
Nov 29 13:04:29 pve2-xxx kernel: bnxt_en 0000:12:00.1 eth1: Broadcom BCM57416 …
Publié le 3 décembre 2024
Tout lire
Une disposition de clavier pour les admin sys
Certains caractères sont pénibles à taper, par exemple : @ | - _ `.
Sous Linux, il est possible de changer la combinaison de touches qui les produit pour éviter les mouvements de mains compliqués.
Pour ma part :
- @ = AltGr + A
- | = AltGr + P
- _ = Maj + Espace
- - = AltGr + S
- ` = AltGr + œ (la touche en dessous de Echap)
Deux possibilités pour faire ça :
Sous Xorg, au runtime avec xmodmap (exemple de script) :
#!/bin/sh
# reset to default layout
setxkbmap fr
# altgr+a = @
xmodmap -e 'keycode 24 = a A a A at adiaeresis acircumflex'
# altr+p = |
xmodmap -e 'keycode 33 = p P p P bar grave paragraph'
# altgr+oe = `
xmodmap -e 'keycode 49 = oe OE oe OE grave'
# altgr+s = -
xmodmap -e 'keycode 39 = s S s S minus Oslash oslash'
# shift+space = _
xmodmap -e 'keycode 65 = space underscore space NoSymbol space'
Sous Wayland (et Xorg), en modifiant le fichier de layout : /usr/share/X11/xkb/symbols/fr
(par exemple) …
Publié le 2 décembre 2024
Tout lire
1
2
Suivant