Quelques astuces diverses, dix-huitième

Twitter Facebook Google Plus Linkedin email

Cela fait beaucoup trop longtemps que je n’ai pas sorti de nouvel épisode de ces astuces en tout genre (Novembre 2019 !). Mais elles existent toujours, et voilà enfin un nouvel épisode.

Un nmap fonctionnel sur WSL

J’en ai parlé, j’ai pas mal expérimenté avec le WSL 1 sur mon installation de Windows à destination du PC de jeu, pour limiter mon recours à une machine virtuelle Linux. Parmi les problèmes/limitations que j’ai pu rencontrer, il y a l’utilisation d’nmap. En effet, le binaire Linux m’a gratifié d’une palanquée de messages d’erreur bien salaces. Pas étonnant, il cherche à demander des infos bas niveau au noyau Linux, qui n’existe pas…

J’ai du coup découvert qu’on pouvait lancer des binaires Windows depuis le WSL, et donc, la solution recommandée dans ce cas est d’installer la version Windows d’nmap depuis le site officiel et seulement lui, qui elle va utiliser les sous-systèmes du noyal Windows pour faire son job, sans erreur donc. Pour l’appeler ensuite de manière transparente, un alias suffit dans votre environnement :

Je vous laisse adapter le chemin si vous avez modifié les points de montages pour une utilisation de Docker.

Fermer la fenêtre principale de Steam sous Manjaro Linux

Si vous êtes aussi sous Manjaro et que vous utilisez Steam, vous aurez certainement remarqué un comportement par défaut plutôt pénible par rapport à Windows : malgré la présence de l’icône de notifications, fermer la fenêtre principale ne fait que la réduire.

C’est une mesure prise à cause de certains bureaux où l’icône déconne et laisse traîner un process zombie à la fin, ce qui empêche de relancer correctement le client derrière. Mais on peut modifier ce comportement avec une variable d’environnement, et je vous recommande de la mettre justement dans /etc/environment :

Normalement ce comportement est spécifique à Manjaro, mais si d’aventure vous le rencontrez ailleurs, vous savez par où commencer.

Correctement utiliser l’accélération du décodage vidéo Intel avec VLC

J’ai passé un peu de temps à pester contre ça, d’autant que c’est beaucoup mieux géré sous Windows. En effet, je pensais avoir suivi les recommandations du Wiki Archlinux, j’avais, droit à ça :

  • intel-media-driver => ok
  • libva => ok
  • vainfo => ko :

Et quand on lance VLC, dans les messages on peut voir ça :

Moralité la conso CPU est bien vénère avec un VLC qui mange facile les trois quarts du CPU au global pour la lecture d’une vidéo full HD.

La solution : la variable d’environnement. Il suffit d’ajouter le bon nom à la variable LIBVA_DRIVER_NAME, et le tour est joué :

Et quand on lance VLC avec :

Je recommande de la coller dans /etc/environment, ça permet d’être le plus large possible dans sa prise en compte. Voilà, personne est foutu de se parler correctement pour s’identifier afin d’être exploité comme il faut. C’est la magie du libre. Ah et non, ça suffit pas pour que ça fonctionne sous Firefox, là c’est encore pire en terme de conso CPU, et j’ai pas encore réussi malgré une fois encore la présence des paquets.

Git : cloner une seule branche (pour un test)

Quand on veut gagner un peu de temps sur un simple test rapide autour d’un code d’un dépôt git, et que ce code se trouve dans une branche spécifique, on peut directement cloner cette branche-là uniquement :

En l’occurrence, je testais la branche d’un mec qui cherchait à dockeriser son appli et qui rencontrait des problèmes au build sous Manjaro 🙂 (et moi une appli JS, en temps normal je m’en approche pas, donc pas besoin de récupérer tout le dépôt pour un simple test, surtout sur la petite connexion de ma petite sœur).

Une déconnexion automatique sur vos sessions SSH inactives

Découvert chez un client y’a pas longtemps, si vous laissez une connexion SSH ouverte sans rien en faire, elle est déconnectée automatiquement au bout d’un certain temps. J’ai cherché comment ils faisaient, c’est via une variable d’environnement, soit dans le /etc/profile pour l’appliquer de manière globale, soit dans votre bashrc, pour que ça ne concerne que l’utilisateur :

Le temps est en secondes. Au passage, double astuce puisqu’on voit ici qu’on définit la variable en lecture seule.

Mise à jour du paquet AUR ttf-sil-fonts sur ArchLinux/Manjaro

Ce paquet, qui avait été laissé à l’abandon, a été repris récemment par un autre mainteneur. Mais le format a changé, avant il se chargeait directement de l’installation, maintenant c’est un meta-paquet qui installe chaque police qui se trouve dans un paquet indépendant. Ce qui cause des conflits avec des polices déjà installées. La solution la plus simple c’est de désinstaller le paquet, et de le réinstaller dans la foulée :

Ça vous évitera comme moi de faire des trucs sales à base de déplacement des fichiers qui existent déjà dans les dossiers cible 😀

Worms WMD et ArchLinux/Manjaro, c’est compliqué (mais ça se soigne)

Le jeu est disponible nativement sous Linux mais la maintenance par Team17 n’est pas vraiment au beau fixe. En particulier, avec les évolutions permanentes d’ArchLinux, c’est simple, par défaut le jeu ne démarre pas. Pour corriger, il faut modifier le script de lancement, pour qu’il ressemble à ça :

C’est plus fourni et surtout ça permet d’utiliser les bibliothèques Steam plutôt que les bibliothèques natives. Dans tous les cas, n’espérez pas faire des parties classées en ligne, la connexion aux serveurs Team17 ne fonctionne pas. Heureusement le multijoueur avec des amis fonctionne quand même, ouf.

Franciser Sublime Text ? C’est possible

Bon personnellement, ça ne m’empêche pas de continuer à bosser en anglais, mais en effet, pour ceux qui s’en servent, un reproche qui lui est souvent fait est d’être « english centric ». Par chance, avec la façon dont est construite l’interface, elle est hautement personnalisable. Et pour ça, il suffit d’installer le paquet LocalizedMenu avec Package Manager, et sélectionner la langue via le menu Preferences, et voilà :

Pour le reste, je vous laisse regarder le dépôt Git.

Lancer une commande originale et pas son alias

Vous le savez j’adore les alias de bash, j’en utilise pas mal. Le problème c’est que parfois on aurait besoin de comparer avec la commande « brute », fort heureusement, il n’y a pas besoin de détruire l’alias, il suffit de préfixer la commande avec un antislash :

Ça permet de voir parfois les problèmes visuels que les personnalisations engendrent 🙂

Kubernetes, communications réseau inter-containers dans un même pod

Un collègue m’a posé la question récemment, et j’avais pas la réponse, alors j’ai cherché. Il expérimentait k3s, et voulait déployer un ethercalc, qui utilise une appli nodejs et un serveur redis pour le stockage des classeurs. Hors il a mis les deux containers dans le même pod, donc pas de service pour le redis :

On voit qu’il tente de mettre le nom du container dans la variable REDIS_PORT_6379_TCP_ADDR, et ça ne fonctionne pas. Et bien j’ai appris que dans ce cas, Kubernetes place les deux containers dans le même réseau, ce qui veut dire qu’on peut contacter le container voisin sur son port en utilisant « localhost » directement !


Voilà, c’est tout pour aujourd’hui, vous l’aurez compris, j’abandonne pas la série mais faut pas s’attendre à voir un nouvel épisode dans moins d’un mois 😀