Lateo.net - Flux RSS en pagaille (pour en ajouter : @ moi)

🔒
❌ À propos de FreshRSS
Il y a de nouveaux articles disponibles, cliquez pour rafraîchir la page.
Hier — 18 avril 2024Informatique & geek

AiFormat – Un outil en ligne de commande pour formater vos fichiers pour Claude

Par : Korben

Si vous vous intéressez un peu aux outils IA, vous connaissez sûrement Claude, l’assistant IA dernière génération d’Anthropic. Depuis la sortie de sa version 3, c’est d’ailleurs devenu mon meilleur pote pour coder à la vitesse de l’éclair. j’ai même pris un abonnement payant en rusant un peu.

Toutefois, le seul truc qui me ralentissait dans mes grandes ambitions, c’était de devoir copier-coller à la main tous mes fichiers de code dans la fenêtre de contexte de Claude pour ensuite lui demander d’analyser ça, et me proposer des corrections ou une nouvelle fonction. Mais ça, c’était avant car je suis tombé sur un petit bijou opensource qui va vous changer la vie : AiFormat.

Ce petit outil en ligne de commande vous permet de sélectionner des fichiers et dossiers, et de les convertir automatiquement dans un format optimisé pour Claude. En deux clics, tout est dans le presse-papier, prêt à être envoyé à votre IA préférée.

Sous le capot, AiFormat utilise Ink, une chouette librairie pour créer des CLI avec une belle interface utilisateur. Ça vous permet de filtrer et naviguer dans vos fichiers, de les sélectionner avec les flèches, et tout ça de façon super intuitive.

Pour l’installer et le prendre en main, c’est hyper simple, tout est expliqué sur la page Github du projet. Ça commence par un simple :

npm install --global aiformat

Ensuite, pour utiliser aiformat, accédez au répertoire contenant les fichiers et dossiers que vous souhaitez partager avec Claude puis lancez la commande suivante :

aiformat

Le créateur a eu la bonne idée de mettre le projet en opensource (MIT license), du coup n’hésitez pas à y jeter un œil et même contribuer si le cœur vous en dit. La communauté vous dira merci !

Franchement, si vous utilisez souvent Claude pour coder ou analyser des projets, c’est un indispensable à avoir dans sa boîte à outils. Ça vous fera gagner un temps fou au quotidien.

À partir d’avant-hierInformatique & geek

Un bug empêche d’utiliser des télécommandes tierces avec l’Apple TV

L'Apple TV 4K 2022, d'Apple, est encore plus compacte.

Il est tout à fait possible de se passer de la télécommande fournie avec l'Apple TV pour contrôler la navigation et la lecture de contenus au sein du petit boîtier d'Apple. Mais c'est devenu soudainement beaucoup plus difficile depuis tvOS 17.4, la dernière mise à jour du système d'exploitation.

OpenHue CLI – Contrôlez vos Philips Hue depuis votre terminal

Par : Korben

Y’a pas très longtemps, je vous ai présenté le projet libre OpenHue pour contrôler vos ampoules Philips Hue via une API REST. Et bien Thibault, le développeur du projet m’a contacté pour me présenter OpenHue CLI

Comme son nom l’indique, il s’agit d’interface en ligne de commande, conçue pour interagir avec vos ampoules Philips Hue, directement depuis votre terminal.

Avec OpenHue CLI, vous pourrez vous connecter sans effort aux bridges Philips Hue, détecter l’ensemble de vos ampoules et vérifier leur état actuel. Bien sûr, vous pourrez les allumer ou les éteindre, ajuster leur luminosité et modifier les couleurs, le tout avec de simples commandes à entrer dans le terminal.

OpenHue CLI fonctionne sous macOS, Linux et Windows et si ça vous dit d’essayer, vous aurez besoin de Homebrew ou de Docker.

Ainsi pour l’installer sous macOS :

brew tap openhue/cli
brew install openhue-cli

Puis lancez la commande setup pour découvrir le bridge openhue :

openhue setup

Et si c’est via Docker :

docker pull openhue/cli
docker run -v "${HOME}/.openhue:/.openhue" --rm --name=openhue -it openhue/cli setup -b 192.168.1.x -k xxxxx

Vous pourrez ensuite lister les ampoules disponibles comme ceci :

docker run -v "${HOME}/.openhue:/.openhue" --rm --name=openhue -it openhue/cli lights list 

Bref, que vous soyez un développeur cherchant à intégrer l’éclairage Philips Hue dans ses projets ou un passionné de domotique souhaitant améliorer son installation, OpenHue CLI est l’outil qu’il vous faut.

OpenHue CLI est disponible sur GitHub à l’adresse suivante : https://github.com/openhue/openhue-cli

Merci à Lorenper

Lumos – Le copilote IA de vos séances de surf

Par : Korben

Allez, aujourd’hui, on va faire un peu d’IA. J’sais pas si vous vous souvenez, mais il y a quelque temps, je vous avais fait une jolie démo de Ollama permettant de faire tourner des LLM (modèles de langage comme ChatGPT) en local avec des modèles ouvert comme Mistral ou Vigogne.

Sauf que voilà, c’est pas forcément pratique à utiliser ailleurs que dans vos propres scripts. Mais c’était sans compter sur Lumos, une extension Chrome propulsée par Ollama qui permet d’avoir sous la main, votre LLM durant vos séances de surf. Ainsi, vous pourrez lui demander des résumés de longs posts de forums, de vous expliquer le dernier rapport de bug d’un projet Github, de résumer les articles trop longs à lire de korben.info ^^ ou encore lui poser des questions par rapport à de la documentation technique ou des fiches produits que vous consulteriez en ligne.

Bref, c’est génial ! Vous devrez bien évidemment avoir un Ollama fonctionnel sur votre machine… Voici d’ailleurs ma vidéo à ce sujet :

Installez ensuite l’extension sous Chrome.

Puis lancez le serveur à l’aide de cette commande :

OLLAMA_ORIGINS=chrome-extension://* ollama serve

Ou comme ceci si vous utilisez Docker:

docker run -e OLLAMA_ORIGINS="chrome-extension://*" -d -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama

Et vous pourrez ensuite profiter de la puissance du LLM de votre choix directement dans votre navigateur au travers d’une fenêtre de chat.

Si vous voulez plus d’infos, c’est par ici que ça se passe.

Dusage – Mieux visualiser l’espace disque utilisé

Par : Korben

Comment faites-vous pour savoir s’il reste de la place sur votre disque dur ?

Les vrais vont me répondre qu’ils utilisent la commande « df » pour en savoir plus, mais faut se l’avouer, cette commande peut être un peu déroutante pour les noobs et pas très attrayante visuellement.

C’est pourquoi aujourd’hui je vous présente l’outil Dusage ! Un outil en ligne de commande conçu pour vous offrir une représentation beaucoup plus claire de l’espace disque utilisé sur votre système.

Pour l’installer, il vous suffit d’ouvrir un terminal et d’utiliser la commande suivante :

cargo install dusage

Ensuite, y’a plus qu’à lancer la commande dusage pour obtenir la liste des systèmes de fichiers avec leur taille totale, l’espace disque utilisé, l’espace disque disponible, le pourcentage d’occupation, le point de montage, ainsi qu’un graphique qui représente l’utilisation des disques et des inodes, avec des couleurs différentes en fonction des points de montage pour faciliter la lecture.

Pour rappel, les inodes sont des structures de données qui contiennent des informations sur les fichiers et les répertoires d’un système de fichiers. L’utilisation des inodes peut être un indicateur utile pour déterminer s’il y a trop de petits fichiers sur votre disque, ce qui peut causer des problèmes de performance.

Si vous l’utilisez sur le Raspberry Pi, vous verrez également que le système de fichiers « log2ram » est affiché en dernier pour faciliter le repérage.

Bref, si vous détestez df, parce que vous n’y comprenez rien, dusage sera là pour vous faciliter la vie. D’ailleurs, si vous l’appréciez, il y a également un autre projet qui s’appelle musage, qui est à la commande « free », ce que dusage est à la commande df. Pour rappel, « free » permet de voir l’espace disponible en mémoire vive.

Amusez-vous bien !

ShellGPT – Boostez votre utilisation du terminal grâce

Par : Korben

Je me lasse pas de tous ces petits softs qui utilisent de l’IA et qui simplifient quand même grandement la vie. Hier on a vu un plugin VS Code pour coder plus rapidement. Et aujourd’hui, je vous propose Shell GPT, un assistant personnel qui utilise ChatGPT pour vous aider à générer des commandes shell, des bouts de code et même de la documentation.

Pour l’installer, c’est easy :

pip install shell-gpt

Il faudra quand même faire un export OPENAI_API_KEYcomme d’habitude dans votre .zshrc ou .bashrc pour lui indiquer votre clé API OpenAI. Et redémarrez votre terminal pour que les modifications prennent effet.

export OPENAI_API_KEY="votre_clé_API_OpenAI"

Une fois installé, ça fait plein de trucs cool. Vous pouvez simplement exécuter la commande sgpt suivie de votre requête pour lui demander tout ce que vous voulez. Par exemple, pour rechercher les couleurs d’un arc-en-ciel, vous pouvez exécuter la commande suivante :

sgpt "quelles sont les couleurs d'un arc-en-ciel ?"

Mais vous pouvez surtout lui demander des commandes que vous ne sauriez pas construire. Par exemple :

sgpt "VOTRE DEMANDE"

Ou pour avoir une réponse plus directe avec uniquement du code, il suffit d’ajouter le paramètre –code :

sgpt --code "VOTRE DEMANDE"

Pour ceux qui veulent, vous pouvez même lancer votre demande en mode shell pour pouvoir l’exécuter de suite :

sgpt --shell "VOTRE DEMANDE"

Et pour aller encore plus loin, vous pouvez aussi le lancer en mode « chat ». S’engagera alors une discussion sur le long cours, avec possibilité de créer des fichiers, de les modifier, de lancer des commandes, etc… Remplacez NOM_SESSION par le titre à donner à votre chat, pour pouvoir ensuite y retourner en gardant le contexte.

sgpt --chat NOM_SESSION "VOTRE DEMANDE"

ShellGPT offre aussi d’autres fonctionnalités avancées, notamment le REPL mode qui permet d’interagir avec ShellGPT dans un mode interactif pour générer du code et exécuter des commandes (en appuyant sur la touche « e »

sgpt --shell --repl NOM_SESSION

Et vous pouvez aussi créer des rôles personnalisés pour personnaliser le comportement de ShellGPT dans des scénarios spécifiques, selon vos envies. Je vous invite à vous plonger dans la doc pour exploiter tout ça. Ça fait beaucoup de choses mais c’est super pratique et ça vous aidera à automatiser pas mal de choses.

Enfin, et je terminerai avec ça, il est possible d’installer une intégration dans votre shell.

sgpt --install-integration

En gros, ça va ajouter quelques lignes dans votre .bashrc ou .zshrc pour simplement en appuyant sur

CTRL + l

transformer ce que vous avez écrit dedans en commande exécutable.

Voilà, j’ai à peu pres fait le tour de cet outil merveilleux !

L’IA c’est cool mais quand c’est bien intégré dans nos outils du quotidien, c’est encore meilleur !

ShellGPT est à découvrir ici.

Radion – Pour découvrir vos prochains jeux vidéos

Par : Korben

Dimitri, lecteur de Korben.info depuis pas mal d’années, m’a contacté le mois dernier, pour me parler de Radion, son application iOS / Android gratuite qui permet de suivre l’actualité jeux vidéos, les sorties notamment et de tout savoir sur tous les jeux qui existent, de lire leurs critiques, la durée de jeu estimé, de voir des tas d’images du jeu et j’en passe. Cette application, véritable encyclopédie pour les gamers, regorge d’informations et de fonctionnalités qui va transformer la manière dont vous suivez vos jeux et futurs jeux préférés.

Mais Radion n’est pas juste une vitrine pour les jeux. Elle permet de marquer les jeux que vous possédez et de suivre votre avancement dans ces derniers. Parfait pour garder une trace de vos exploits 🙂

Et surtout, en fonction de ce que vous aimez, des consoles que vous possédez et des jeux que vous attendez, l’IA de Radion peut vous recommander les prochains titres qui seront à coup sûr des hits pour vous dans votre petit cœur.

Bref, vous l’aurez compris, Radion est aux jeux vidéos, ce que Trakt.tv est aux séries, pour ceux qui connaissent. Radion est à la fois un journal de bord pour vos aventures ludiques et une plateforme pour découvrir de nouveaux horizons dans le monde des jeux.

Radion sert aussi de plateforme sociale. Le partage de fiches de jeux entre amis n’est pas seulement un moyen de recommandation, c’est un outil pour tisser des liens, pour créer des discussions. En partageant vos expériences de jeu, vos découvertes, et même vos critiques, Radion devient un espace d’échange et de partage pour la communauté des gamers.

On verra ensuite comment ça évolue. Perso, je trouve que des conseils pour passer les niveaux, en mode ETAJV à l’ancienne, ce serait bien cool à rajouter. Tout ce que je peux vous dire c’est que le dev travaille sur l’import / synchronisation des jeux avec Steam / Xbox / PlayStation directement dans l’application. Hâte de voir ce que ça va donner.

A découvrir ici pour iOS et Android.

What happens when an astronaut in orbit says he’s not coming back?

The STS-51-B mission begins with the liftoff of the <em>Challenger</em> from Pad 39A in April 1985.

Enlarge / The STS-51-B mission begins with the liftoff of the Challenger from Pad 39A in April 1985. (credit: NASA)

Taylor Wang was deeply despondent.

A day earlier, he had quite literally felt on top of the world by becoming the first Chinese-born person to fly into space. But now, orbiting Earth on board the Space Shuttle, all of his hopes and dreams, everything he had worked on for the better part of a decade as an American scientist at NASA's Jet Propulsion Laboratory, had come crashing down around him.

Wang was the principal investigator of an experiment called the Drop Dynamics Module, which aimed to uncover the fundamental physical behavior of liquid drops in microgravity. He had largely built the experiment, and he then effectively won a lottery ticket when NASA selected him to fly on the 17th flight of the Space Shuttle program, the STS-51-B mission. Wang, along with six other crew members, launched aboard Space Shuttle Challenger in April 1985.

Read 53 remaining paragraphs | Comments

Du transferts de fichiers simplifiés avec Aim !

Par : Korben

Aim est un outil en ligne de commande qui vous permet de télécharger et d’uploader des fichiers tout en prenant en charge la reprise en cas de déconnexion ou d’échec du transfert.

Pour l’installer, ouvrez un terminal et entrez la commande suivante :

cargo install aim

Des binaires pour Linux et macOS sont également disponibles ici. Sinon, y’a toujours Docker pour ceux qui aiment mettre le moindre truc en conteneur. Il peut également se mettre à jour lui-même grâce à cette commande :

aim --update

L’outil est capable de télécharger n’importe quoi du moment que c’est diffusé en http, sftp, ftp, ssh et S3. Pour le lancer, il suffit simplement de lui donner l’url du fichier à récupérer :

aim https://domain.com/fichier.zip

Et pour uploader vers un endpoint c’est :

aim fichier.zip https://domain.com/destination

Aim prend en charge plusieurs formats de sortie et vous permet de configurer des indicateurs personnalisés pour les barres de progression. Vous pouvez partager facilement des fichiers entre différentes machines et les télécharger à l’aide d’un simple navigateur.

Vous pouvez par exemple partager un répertoire courant comme ceci :

aim .

Et à partir d’une seconde machine, accéder à ce partage :

aim http://ADRESSEIP:8080

Ou directement à un fichier précis :

aim http://ADRESSEIP:8080/fichier.zip

L’une des particularités d’Aim est sa capacité à utiliser différentes méthodes d’authentification, telles que les URL basiques, les fichiers .netrc, les clés SSH et les dossiers AWS. Cela rend l’accès aux fichiers plus sécurisé et fiable, en évitant les problèmes d’authentification courants.

Aim propose également un mode interactif avec l’option -i pour naviguer dans les fichiers dispo au bout d’une URL.

Voilà pour la petite présentation d’Aim. De quoi automatiser vos scripts de téléchargement ou d’upload très simplement.

Chob – Pour rechercher des applications Linux (Flatpack, Snap et AppImage)

Par : Korben

Maintenant que Linux c’est devenu main-stream, il faut des outils adaptés aux gens qui s’habille normalement, prennent des douches et ont des amis.

Et Chob, même s’il est en ligne de commande, en fait partie puisqu’il permet de chercher un outil dont vous auriez besoin sous la forme d’un paquet facile à installer. Ce genre de paquets, vous les connaissez, c’est du Flatpack, Snap ou encore AppImage et c’est pratique car ça bave moins sur votre système puisque ça encapsule toutes les dépendances.

Alors comment l’utiliser ?

Et bien téléchargez le fichier exécutable pour votre distribution Linux depuis les Releases. Puis accordez les permissions d’exécution au fichier téléchargé en utilisant la commande

chmod +x chob-linux.

Lancez ensuite Chob en exécutant la commande suivante en remplaçant « PROGRAMME » par le nom du paquet que vous cherchez.:

./chob-linux PROGRAMME

Comme ça, plus besoin d’aller sur un site ou un autre pour trouver le bon truc. Vous avez tout sous la main pour récupérer du Snap, du Flatpak ou du AppImage en une simple commande.

X-Pipe – Le hub pour vos connexions shell et votre gestion de fichiers à distance

Par : Korben

Vous êtes tranquille sur votre ordinateur, en mode « c’est moi le boss du shell » mais à chaque fois que vous voulez vous connecter à distance sur un serveur ou transférer un fichier, c’est parti pour quelques minutes de lignes de commande à taper et de chemins d’accès, d’adresse IP et d’identifiants à retrouver.

Et si on se simplifiait un peu la vie ?

Avec X-Pipe, un logiciel gratuit si vous l’utilisez uniquement avec des outils non commerciaux, vous allez pouvoir centraliser dans une espèce de hub, toutes les connexions à vos machines distantes. Les informations de connexion conservées par Pipe-X sont évidemment chiffrées et stockées uniquement sur votre ordinateur et ce hub va vous permettre de rapidement vous connecter et de rapidement passer d’un environnement à l’autre. Il permet même de créer des raccourcis à mettre sur votre bureau, qui une fois cliqués ouvriront instantanément les connexions d’un groupe dans un terminal.

La particularité d’XPipe est qu’il s’intègre parfaitement avec nos outils existants en déléguant toutes les tâches à nos éditeurs de texte/code préférés et autres outils en ligne de commande.

Mais ce n’est pas tout puisque X-Pipe est également un gestionnaire de fichiers à distance. Cela veut dire que vous pouvez interagir avec le système de fichiers de n’importe lequel de vos serveurs, directement depuis l’outil. En un clic, vous pourrez même lancer une session ou encore éditer des fichiers. Et si un script n’est pas accessible pour des questions de droits, vous pouvez même le lancer directement via sudo.

Et le plus beau là-dedans; c’est qu’il y a même un système de scripting assez évolué qui permet de créer des script réutilisables ou des templates de scripts à lancer sur les systèmes distants.

Pour installer XPipe, il existe des versions d’installation pour les systèmes d’exploitation les plus populaires comme Windows, Linux et MacOS.

Mais aucun souci si vous préférez utiliser des versions portables…

Ou l’installer à l’aide d’une simple ligne de commande sous Windows :

powershell -ExecutionPolicy Bypass -Command iwr "https://raw.githubusercontent.com/xpipe-io/xpipe/master/get-xpipe.ps1" -OutFile "$env:TEMP\get-xpipe.ps1" ";"  "&" "$env:TEMP\get-xpipe.ps1"

ou sous macOS (vous pouvez faire aussi un brew : brew install –cask xpipe-io/tap/xpipe) :

bash <(curl -sL https://raw.githubusercontent.com/xpipe-io/xpipe/master/get-xpipe.sh)

À découvrir ici

QtScrcpy – Contrôlez vos appareils Android depuis votre PC / Mac

Par : Korben

Je vous ai déjà parlé à plusieurs reprises d’outils qui permettent de contrôler facilement les appareils Android directement depuis votre PC via USB ou en réseau comme le célèbre outil en ligne de commande Scrcpy.

Mais comme je sais que la ligne de commande, ce n’est pas l’ultra kiffe de tout le monde (qu’est ce que vous faites là, à lire cet article alors ?), je vous présente QtScrcpy.

Ça fonctionne sous macOS, Linux et Windows et pas besoin d’avoir de droits root. C’est entièrement basé sur Scrcpy, donc vous aurez les mêmes fonctionnalités, mais tout pourra se paramétrer via une interface.

Niveau config, tout se fait au clic et vous pouvez même écrire votre propre script pour mapper les actions du clavier et de la souris aux touches et aux clics à faire sur le téléphone portable selon vos besoins. Et ça supporte même le multi-touch.

Des scripts pour TikTok et quelques autres jeux sont fournis par défaut. Comme ça, une fois activé, vous pouvez jouer au jeu avec votre clavier et votre souris.

QtScrcpy se veut léger, performant (30 à 60 fps / moins de 70 ms de latence) et peut afficher des résolutions allant au-delà du 1080p. L’idée pour le créateur c’est vraiment de jouer tel un pro gamer sur vos jeux mobiles depuis votre ordinateur. Mais ça conviendra également à tous ceux qui souhaitent automatiser certains usages d’app mobile, y compris pour faire de l’enregistrement d’écran (vidéo ou images).

Et ça supporte même plusieurs appareils en même temps, ce qui peut vous permettre d’effectuer une seule tâche en simultanée sur une flotte de smartphone Android. Bref, y’a de quoi s’amuser.

À découvrir ici.

Azure Cost CLI – Pour suivre les coûts liés à Microsoft Azure

Par : Korben

Aujourd’hui les amis, j’aimerais vous faire découvrir un outil en ligne de commande qui va bien vous aider si vous évoluez dans l’écosystème de Microsoft Azure.

En effet, en fonction de ce que vous faites avec vos instances et vos services Azure, le coût n’est pas forcément le même, et ce n’est pas super pratique de suivre tout ça uniquement via le site web. Heureusement avec l’outil Azure Cost Cli, vous allez pouvoir garder un œil sur les dépenses liées à votre utilisation des ressources, directement depuis votre terminal.

Ce logiciel utilise l’API Azure Cost Management pour récupérer les coûts et présente les résultats directement dans la console ou sous format JSON. JSON que vous pouvez ensuite exploiter dans vos outils ou scripts.

Hormis l’affichage des coûts cumulés comme vous pouvez le voir ci-dessus, il peut également afficher les coûts journaliers, extraire les ressources par coûts et répertorier les budgets.

Et il peut même détecter les anomalies éventuelles et les tendances d’évolution dans les coûts, ce qui permet d’automatiser encore plus les rapports générés.

Pour l’installer, c’est simple, ouvrez un terminal et utilisez la commande suivante (il vous faudra dotnet) :

dotnet tool install --global azure-cost-cli 

Ensuite, vous pouvez commencer à afficher les couts cumulés associés à un abonnement Azure spécifique en lui passant votre ID :

azure-cost accumulatedCost -s 12345678-1234-1234-1234-123456789012

Pour générer un rapport CSV des coûts par ressource, rien de plus simple :

azure-cost costByResource -s 12345678-1234-1234-1234-123456789012 -o csv

Imaginons maintenant que vous souhaitiez afficher les coûts quotidiens pour le mois de janvier 2023, regroupés par nom de service (ServiceName) :

azure-cost dailyCosts --dimension ServiceName --from 2023-01-01 --to 2023-01-31

Pratique non ? Et si vous souhaitez faire de la détection d’anomalie au niveau des coûts générés durant une certaine période :

azure-cost detectAnomalies -g myResourceGroup --timeframe Custom --from 2023-01-01 --to 2023-01-31

J’ai également découvert que cet outil pouvait être utilisé dans un GitHub Workflow pour obtenir le coût de notre abonnement et stocker les résultats en markdown. C’est vraiment génial pour avoir un aperçu rapide des frais liés à notre abonnement.

Voilà, si ça vous intéresse pour suivre vos coûts sur Azure, le projet Azure Cost Cli est disponible ici sur Github.

Commandant de l’Espace – Le Guide Stratégique de l’Univers Intergalactique

Par : Korben

Aujourd’hui, ça va vous changer un peu, puisque je vais vous parler d’un bouquin.

Alors, non pas un livre de recettes geeks ni de jeux vidéos, mais le sujet va quand même vous intéresser puisque je vais vous parler d’espace.

Ce livre c’est « Commandant de l’Espace« , écrit par Michel Friedling, un mec qui a commencé par piloter des avions de chasse et qui a gravi les échelons jusqu’à devenir général de l’armée de l’air et de l’espace.

Imaginez ça, un ingénieur en aéronautique, pilote de chasse, breveté de l’École de guerre, et auditeur de l’IHEDN (Institut des hautes études de défense nationale), qui a eu entre ses mains, en 2019, les rênes de la Stratégie spatiale de défense française. Si ça, ça ne vous impressionne pas, je ne sais pas ce qu’il vous faut.

Dans son livre « Commandant de l’Espace », Michel Friedling, devenu par la force des choses, premier Commandant de l’Espace français, nous plonge dans une aventure spatiale qui ressemble vraiment à une série Netflix, mais en mieux évidemment. On y découvre comment l’espace, terrain de jeu géopolitique, a aujourd’hui totalement redéfini les règles du pouvoir mondial. Et c’est loin d’être un conte de fées.

D’ailleurs, Friedling y fait un parallèle intéressant entre les explorateurs d’autrefois et les conquérants spatiaux d’aujourd’hui. Mais attention, on n’est pas dans un roman de science-fiction puisque le monsieur a été au cœur de l’action, en contribuant à l’élaboration de la première véritable stratégie de défense spatiale française.

Photo : Wikipedia.

Actuellement c’est donc plutôt un retour à la compétition stratégique, un Eldorado du 21e siècle convoité à la fois par les États et des acteurs privés audacieux (coucou SpaceX). Michel Friedling décrit cet espace comme un « Far-West » cosmique, une frontière sans loi où se cachent risques et menaces inimaginables. Il met en lumière comment, dans les siècles à venir, le vrai pouvoir sera aux mains de ceux qui tiendront les rênes de l’espace.

Les États-Unis et la Chine sont actuellement en tête de cette course, mais la Russie, avec ses manœuvres récentes comme l’attaque d’un réseau de télécommunications par satellite lors de son conflit avec l’Ukraine, reste un acteur clé. Et n’oublions pas l’Inde et d’autres pays émergents, qui s’élancent avec ambition dans cette quête de suprématie spatiale.

Même si l’auteur reprend l’histoire de la conquête spatiale dans les premières pages, ce livre n’est pas juste un récit de conquêtes spatiales qu’on connait déjà bien. Non, non, l’auteur avec son expérience impressionnante d’ingénieur et de stratège, nous fait surtout comprendre au fil des pages, les enjeux, stratégiques, économiques et militaires de l’espace. Ça se lit en quelques heures et vous aurez l’impression d’avoir eu un cours particulier avec le prof le plus cool de la galaxie.

Pour ceux qui s’intéressent à la géopolitique, à la défense, ou qui sont juste fascinés par l’espace, « Commandant de l’Espace » est une mine d’or. C’est un livre écrit par quelqu’un qui a non seulement étudié l’espace, mais qui l’a vécu. Aujourd’hui CEO de Look Up Space (Rien à voir avec DiCaprio), Michel Friedling est à la pointe de ce qui se fait en SpaceTech française. Si vous ne connaissiez pas, la SpaceTech c’est tout pareil que la FrenchTech, mais en apesanteur et avec un peu plus de transpiration.

Pour conclure, « Commandant de l’Espace« , ce n’est pas juste un livre sur l’espace. C’est un voyage guidé par un véritable maître de la stratégie spatiale qui nous rappelle l’importance de l’espace dans notre vie quotidienne et dans la géopolitique mondiale actuelle. Et il y a même de jolies photos dedans.

C’est parfait pour ceux qui cherchent à comprendre notre monde et le futur.

Et comme cadeau de Noël pour geek, c’est le succès assuré !

DOS_deck offers free, all-timer DOS games in a browser, with controller support

Layout of games on DOS_deck

Enlarge / DOS_deck is an impressive technical feat, sure. But it's also a very keen curation of some DOS shareware classics (pun somewhat intended). (credit: DOS_deck/Martin Kool)

Revisiting a classic game from the AUTOEXEC.BAT/CONFIG.SYS era of MS-DOS can be a fun distraction. But the more friction and configuration between you and a playable game, the more likely you are to fall off before you ever hit the menu screen. You spend enough time fine-tuning your modern systems; doing so within an arcane framework, for a single game, is not everybody's idea of fun.

DOS_deck seems to get this, providing the most frictionless path to playing classic DOS shareware and abandonware, like Doom, Jazz Jackrabbit, Command & Conquer, and Syndicate, with reconfigured controller support and a simplified interface benevolently looted from the Steam Deck. You can play it in a browser, right now, the one you're using to read this post.

In fact, I stopped between that last sentence and this one to play a couple levels of Doom in a Chrome browser. And now I've taken another punctuation break to play the first level of Syndicate, which moves much faster than I remember. The control schemes are clever, the interface is easy to get used to and move around, and there's a host of little extras to appreciate, including constant game progress (game state) saving, and linking and setting certain games as favorites.

Read 4 remaining paragraphs | Comments

Star Citizen’s Squadron 42 campaign is “feature complete” after 11 years

Gillian Anderson in Star Citizen

Enlarge / Gillian Anderson's likeness has been promoting Star Citizen since 2015. (credit: Cloud Imperium Games)

Eleven years ago, Wing Commander designer Chris Roberts announced Star Citizen, an online multiplayer game that he said would "change the way people perceive games for the PC." Roberts told Ars' Kyle Orland soon after that he didn't enjoy the four-year development of another hit, Freelancer, because "spending that many years disconnected from your audience, sort of working off by yourself, wasn't creatively fun for me." With Star Citizen, Roberts said he could keep development from dragging on by engaging fans and using a pre-built engine, as opposed to what Roberts said would be "two years" building his own.

Roberts has definitely engaged his audience in Star Citizen, to the tune of $616 million raised from more than 4.8 million "Star Citizens." It has just taken a bit longer than two years to give them a true release.

Roughly 11 years after Star Citizen's initial announcement that included it, then nine years after its first potential release date, Squadron 42, the single-player campaign, is now "feature complete" and has "entered its polish phase." Roberts announced this in a video released Sunday as part of an annual CitizenCon for backers, along with footage from the game and details on its development.

Read 7 remaining paragraphs | Comments

20 Mac Terminal Commands Every User Should Know

Par : Cory Bohon
The command-line interface of your Mac lets you get into the Unix underpinning that makes Macs so powerful. Learn the top commands everyone should know to be a Mac power user.

Vos présentations en ligne de commande avec mdp

Par : Korben

Il était une fois, dans le vaste monde des développeurs et des passionnés de technologie, un outil simple et efficace permettant de créer des présentations en ligne de commande grâce à la syntaxe markdown.

D’ailleurs, voici à quoi ressemble une prez réalisée avec mdp :

Je vous le dis, cet outil magique nommé mdp va révolutionner vos présentations. Pour ceux qui ne sont pas familiers avec Markdown, c’est un langage de balisage léger qui vous permet d’écrire du texte formaté avec une syntaxe simple et facile à lire. Vous pouvez l’utiliser pour créer des documents, des articles, des notes et bien sûr, et maintenant des présentations ! Et ça c’est fort !

Donc, pour commencer, il faut que vous ayez installé les dépendances ibncurses5-dev et libncursesw5-dev ainsi que l’outil que vous pouvez compiler comme ceci :

git clone https://github.com/visit1985/mdp.git
cd mdp
make
make install

Mdp est disponible également dans les dépôts de certaines distributions Linux comme Ubuntu mais également macOS. Vous pouvez donc l’installer sous macOS avec la commande brew :

brew install mdp

Ou sous Ubuntu comme ceci :

apt get install mdp

Gardez à l’esprit que pour utiliser les couleurs de mdp dans votre terminal, vous devrez vous assurer que la variable TERM est également correctement définie.

export TERM=xterm-256color

Maintenant, parlons un peu des fonctionnalités de mdp. Les barres horizontales sont utilisées comme séparateurs de diapositives et l’outil prend en charge le formatage markdown de base tel que les titres, le formatage du code, les listes, les liens, le gras, l’italique, le souligné…etc.

Si vous voulez en savoir plus sur les différentes balises et options, je vous recommande d’ailleurs de consulter le fichier sample.md.

Ensuite, une fois votre fichier prêt, vous pouvez le lancer avec la commande suivante :

mdp sample.md

Pour naviguer dans les diapositives, c’est simple ! Vous pouvez utiliser les flèches du clavier, la barre d’espace, la touche entrée, retour arrière, Page Up, Page Down, Home, End, les chiffres 1-9, ‘r’ et ‘q’.

Parfois, vous aurez peut-être besoin de créer une version de débogage de mdp. Dans ce cas, il suffit d’exécuter la commande suivante : make DEBUG=1. Cela vous permettra de résoudre rapidement les problèmes lors de l’élaboration de vos présentations.

Maintenant, je suis sûr que vous vous demandez : « Pourquoi choisir mdp pour mes présentations ? » Et bien, la réponse est simple : c’est léger, portable et incroyablement pratique. Vous n’aurez plus besoin d’applications lourdes et compliquées comme PowerPoint ou Keynote pour créer des présentations claires et efficaces à partager avec vos collègues, vos amis ou encore votre grand-mère !

Vous pouvez simplement ouvrir un terminal, écrire quelques lignes de Markdown, et voilà, une présentation impressionnante est née !

Il y a un superbe dicton qui dit : « Less is More » (Moins, c’est plus), et c’est précisément ce que mdp incarne. En utilisant des outils simples et légers comme mdp, vous pouvez vous concentrer sur le contenu et la cohérence de vos présentations tout en évitant les distractions et les complications inutiles.

À découvrir ici

Cli-gpt – Vous allez à nouveau aimer votre terminal Linux / macOS

Par : Korben

La semaine dernière, j’ai découvert un nouvel outil extraordinaire appelé cli-gpt. Cet outil me permet de communiquer avec mon ordinateur comme jamais auparavant en utilisant simplement ma langue maternelle (le français pour ceux qui se demandent).

Je vous explique…

Aux temps jadis, l’accès aux programmes et aux fonctionnalités d’un ordinateur notamment sous Linux ou macOS nécessitait de lire de grosses documentations et de mémoriser des commandes et des syntaxes parfois assez complexes. C’est d’ailleurs pour ça que de nombreux informaticiens ont commencé à choper le melon, tout simplement parce qu’eux ont le temps pour ça.

Mais avec le développement de l’intelligence artificielle et la révolution des modèles de langage de type GPT, c’est terminé tout ça. Vous n’avez plus besoin de ces gens-là puisque cli-gpt se charge de tout en permettant aux utilisateurs de donner des instructions exécutables en langage naturel.

Vous vous demandez peut-être comment cela fonctionne. C’est en réalité assez simple. Au lieu de taper des lignes de code cryptiques, je dis simplement à mon ordinateur ce que je veux accomplir en entrant des phrases courtes et claires. Par exemple, si je veux créer un dossier, je peux taper : cli-gpt "crée un dossier nommé projets » et voilà, j’aurais mon dossier.

Pour démarrer avec cli-gpt, vous devrez d’abord l’installer.

Voici les étapes pour le faire :

  1. Clonez le dépôt avec la commande suivante : git clone --recurse-submodules https://github.com/filippofinke/cli-gpt
  2. Placez vous dans le répertoire de cli-gpt et créez un répertoire build : mkdir build
  3. Ensuite, faites cd build puis lancez la commande cmake ..
  4. Puis lancez la commande : cmake --build . --target install
  5. Enfin, définissez votre clé d’API OpenAI avec : export OPENAI_API_KEY=<votre clé d'API OpenAI>

Une fois ces étapes complétées, il vous suffit de lancer cli-gpt avec la commande suivante :

cli-gpt <expliquez ce que vous voulez faire>

Si vous avez besoin d’aide, vous pouvez toujours vous tourner vers la communauté en ligne. Filippo Finke, le développeur derrière ce projet, encourage les contributions et les suggestions de la communauté. Vous pouvez le suivre sur GitHub, LinkedIn, et visiter son site web.

Permettez-moi de vous donner quelques exemples pour vraiment comprendre le potentiel de cet outil incroyable. Supposons que vous souhaitiez rechercher des fichiers dans un dossier spécifique. Avec un terminal traditionnel, cela impliquerait de taper une série de commandes peu claires. Mais avec cli-gpt, il suffit de dire : cli-gpt "montre-moi tous les fichiers PDF dans le dossier documents« 

… comme si vous demandiez de l’aide à un ami.

L’outil cli-gpt, ce n’est pas seulement un gain de temps, c’est un moyen vraiment révolutionnaire de communiquer avec votre ordinateur. Imaginez ceci comme la rencontre entre le langage humain et le langage informatique, permettant une communication simplifiée et une productivité améliorée.

Enfin, si vous souhaitez en savoir plus sur cli-gpt ou si vous voulez consulter le code source, rendez-vous sur la page d’accueil GitHub du projet.

Et sinon, y’a également le projet AI Shell que je n’ai pas encore eu le temps de tester mais qui semble faire plus ou moins la même chose.

Source

Just – Un outil puissant pour lancer les commandes de vos projets

Par : Korben

Just est un gestionnaire de commandes qui permet aux utilisateurs d’enregistrer et d’exécuter des commandes spécifiques à un projet. Les commandes, appelées recettes (recipes en anglais), sont stockées dans un fichier nommé justfile, dont la syntaxe est inspirée de make.

Just présente de nombreuses fonctionnalités utiles et des améliorations par rapport à make, notamment la prise en charge de Linux, MacOS et Windows sans dépendances supplémentaires, des rapports d’erreurs spécifiques et détaillés, et la possibilité d’accepter des arguments lors de son utilisation avec la ligne de commande.

De plus, Just peut être invoqué depuis n’importe quel sous-répertoire, et pas seulement le répertoire contenant le justfile. Les recettes peuvent être écrites dans des langages comme Python ou NodeJS, et les erreurs sont résolues de manière statique chaque fois que c’est possible.

L’outil prend également en charge le chargement des variables d’environnement à partir de fichiers .env, l’énumération des recettes à partir de la ligne de commande et les scripts de complétion de ligne de commande pour la des coquilles courantes.

Pour plus d’informations sur Just et ses fonctionnalités, visitez le site officiel ou la documentation officielle. Des exemples se trouvent également sur le dépôt GitHub.

Et si vous avez besoin d’aide, n’hésitez pas à ouvrir une issue sur Github ou à contacter le développeur sur Discord.

Lorsque vous travaillez avec des scripts shell, gardez à l’esprit que chaque ligne est exécutée dans un shell nouvellement créé. Cela signifie que si vous changez de répertoire courant via une commande, cela n’affectera pas les autres lignes de commande.

Une autre astuce utile consiste à utiliser le symbole « @ » pour empêcher l’affichage des commandes. Par exemple, si vous voulez exécuter une commande et simplement afficher « C’est fait ! » sans montrer la commande réelle, vous pouvez utiliser la syntaxe suivante :

hello: @echo 'C Fait !'

Si également, vous souhaitez en savoir plus sur la conception de scripts shell, consultez ce lien. Et si vous avez trouvé cet article utile, pensez à soutenir le projet.

Source

Visualisez vos données JSON en graphes avec JSON CRACK

Par : Korben

Si vous traitez régulièrement de gros fichiers JSON et que vous avez un peu de mal à vous y retrouver, JSON CRACK peut vous aider à y voir plus clair.

Cet outil que vous pouvez utiliser directement en ligne ou depuis Visual Studio Code va vous permettre de visualiser les données JSON de manière beaucoup plus intuitive au travers de graphs comme celui-ci :

Graphique en barres représentant les données JSON

Vous pouvez d’un clic charger n’importe quel fichier JSON, le modifier, changer l’orientation du graphique, étendre ou réduire les noeuds, mais également faire des recherches dans le JSON et bien sûr exporter tout cela au format PNG. Vous pouvez même créer un widget à intégrer sur votre site ou partager le graph via une simple URL.

Le projet est open source donc vous pouvez aussi l’installer en local sur votre machine, mais si vous utilisez la version en ligne, sachez que pour stocker au-delà de 15 fichiers JSON ou pour générer des JSON via l’API, il faudra vous alléger de 5$ par mois.

Le GitHub est ici et pour accéder au site, c’est par là.

Mprocs – Lancez et jonglez avec plusieurs commandes en parallèle tel un ninja geek

Par : Korben

Mais quel bordel tous ces terminaux ouverts sur vos ordinateurs. Des tas de commandes à lancer en même temps sur la même machine, et vous risquez de vous mélanger les pinceaux à force de jongler entre les terminaux.

Alors pour éviter cela, j’ai le truc qu’il vous faut !

Cela s’appelle Mprocs et c’est un outil libre qui permet de lancer plusieurs commandes ou processus en parallèle.

Alors oui, je sais vous allez me dire : « Mais Ooooh, ça ressemble à Concurrently, non ? »

Que nenni mes amis ! Car mprocs a un atout dans sa manche : il permet d’afficher la sortie de chaque commande séparément et d’interagir avec les processus lancé. Ainsi, vous pouvez même travailler dans vim tout en étant à l’intérieur de mprocs. Si c’est pas beau ça !

Capture d'écran de la page d'accueil de Mprocs montrant les différentes fonctionnalités

Ca fonctionne sous Linux, macOS et Windows et pour l’utiliser, vous pouvez simplement enchaîner les commandes comme ceci :

mprocs "yarn test -w" "webpack serve"

Ou carrément faire un fichier mprocs.yaml qui contiendra toutes vos commandes:

procs:
  nvim:
    cmd: ["nvim"]
  server:
    shell: "nodemon server.js"
  webpack: "webpack serve"
  tests:
    shell: "jest -w"
    env:
      NODE_ENV: test

Et qui sera pris en compte lorsque vous lancerez :

mprocs

Et maintenant, passons aux choses sérieuses. Comment installer cette merveille ? Pas de panique, mprocs a tout prévu. Vous pouvez le télécharger sous forme de binaire pour Linux, MacOS et Windows ou l’installer via npm, homebrew, cargo, scoop, AUR ou MPR. Les instructions d’installation détaillées sont disponibles dans la documentation en cliquant ici.

Allez, au boulot !

Transformez vos commandes curl en Python, JavaScript, PHP, R, Go et bien d’autres avec CurlConverter

Par : Korben

Si vous codez des outils qui utilisent des APIs ou d’autres services en ligne pour récupérer de la donnée ou en envoyer, j’imagine que vous adorez vous plonger dans leur documentation. En général, on y trouve des exemples de code qui expliquent comment « discuter » avec l’API, et ces exemples utilisent le plus souvent la commande curl. Quand on a de la chance, il y a aussi des exemples en python ou en JS voire JavaScript, mais ça ne va pas chercher plus loin.

Alors, comment faire pour gagner du temps si vous devez écrire du R, Go, C#, Ruby, Rust, Elixir, Java, MATLAB, Dart, CFML, Ansible URI ou encore du JSON ?

Et bien avec le site CurlConverter, vous allez pouvoir convertir toutes ces commandes curl dans le langage de votre choix. Il est également disponible avec la commande curlconverter que vous pouvez installer sur votre machine.

Par exemple, cette commande curl d’authentification :

curl "https://example.com/" -u "some_username:some_password"

Devient en DART le code suivant :

import 'dart:convert';
import 'package:http/http.dart' as http;

void main() async {
  var uname = 'some_username';
  var pword = 'some_password';
  var authn = 'Basic ' + base64Encode(utf8.encode('$uname:$pword'));

  var url = Uri.parse('https://example.com/');
  var res = await http.get(url, headers: {'Authorization': authn});
  if (res.statusCode != 200) throw Exception('http.get error: statusCode= ${res.statusCode}');
  print(res.body);
}

Ou en C# :

HttpClient client = new HttpClient();

HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Get, "https://example.com/");

request.Headers.Add("Authorization", "Basic " + Convert.ToBase64String(System.Text.ASCIIEncoding.ASCII.GetBytes("some_username:some_password")));

HttpResponseMessage response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
string responseBody = await response.Content.ReadAsStringAsync();

CurlConverter sait interpréter la syntaxe Bash, tels que les chaînes de caractères ANSI-C et les fichiers pipés. Il connaît également tous les arguments de curl (il y en a plus de 300 !!), y compris ceux qui ont été supprimés des versions récentes (et donc ignorés la plupart du temps). Il peut également convertir les données JSON en objets natifs et génère le code capable de le lire soit à partir d’un fichier ou d’un flux en entrée.

Malheureusement, seul le protocole HTTP est pris en charge, et les générateurs de code pour d’autres langages sont moins complets que le générateur pour Python.

Pour utiliser curlconverter, vous pouvez l’installer en tant que bibliothèque JavaScript avec la commande

npm install curlconverter

Ou comme outil utilisable en ligne de commande comme ceci :

npm install --global curlconverter

Voici un exemple de code généré à partir de cette commande :

$ curlconverter --data "hello=world" example.com
import requests

data = {
    'hello': 'world',
}

response = requests.post('http://example.com', data=data)

Bref, super pratique pour ceux qui veulent se simplifier le processus de création de requêtes HTTP dans leur langage favori, tout en se reposant sur des commandes curl plus familières.

Mesurez les performances de votre code ou de vos outils grâce à Hyperfine

Par : Korben

On vit dans un monde où on nous incite sans cesse à être plus performants. Il faut en faire plus, plus vite et mieux. Tout le temps. C’est épuisant. Et surtout très con.

D’ailleurs, on n’en demande pas tant à nos outils. On les développe ou on les utilise sans vraiment se poser de question sur leurs performances réelles. Et c’est dommage car en tant que développeur, vous aimeriez peut être mesurer le temps d’exécution d’un script shell pour savoir s’il est plus rapide qu’une version précédente. Ou pouvoir comparer la rapidité d’exécution de différents programmes afin de sélectionner le meilleur !

Pas de souci, j’ai ce qu’il vous faut. Cela s’appelle Hyperfine et c’est un outil de benchmarking qui s’utilise en ligne de commande et qui permet de comparer les temps d’exécution de différents programmes.

C’est très utile pour mesurer par exemple les performances des programmes qui effectuent beaucoup d’écritures et de lectures sur un disque afin de voir comment ils se comportent avec ou sans cache, ou sur un disque dur ou un SSD.

Hyperfine dispose de nombreuses fonctionnalités pour vous aider à obtenir des résultats précis et fiables, notamment une analyse statistique sur plusieurs exécutions, la prise en charge de commandes shell arbitraires et un retour constant sur l’avancement du benchmark et les estimations en cours.

Pour l’utiliser, vous pouvez par exemple faire un benchmark de n’importe quelle commande comme ceci :

hyperfine COMMANDE_A_EVALUER

Pour tester la commande sleep par exemple, on fera comme ceci :

hyperfine 'sleep 0.3'

Ainsi, par défaut, Hyperfine effectuera au moins 10 exécutions du programme et prendra sa mesure à chaque fois pendant 3 secondes pendant au moins 3 secondes. Notez que vous pouvez changer cette durée de test en utilisant l’option -r ou --runs et en spécifiant la durée derrière.

Si vous souhaitez comparer les temps d’exécution de différents programmes, vous pouvez également passer plusieurs commandes à Hyperfine. Ainsi pour pour comparer les temps d’exécution de hexdump et xxd, vous pouvez appeler hyperfine comme ceci :

hyperfine 'hexdump VOTRE_FICHIER' 'xxd VOTRE_FICHIER'

Par exemple si vous avez un doute sur les performances d’une nouvelle version d’un outils, Hyperfine peut vous aider à la comparer avec une version précédente.

Hyperfine vous permet également de réaliser des benchmarks où un seul paramètre change à chaque exécutions. Ca permet de mesurer le comportement d’un programme en fonction des paramètres que vous lui faites digérer.

Au niveau des exports, c’es top puisque vous pouvez récupérer ensuite les résultats au format CSV, JSON, Markdown…etc afin d’analyser ensuite tout ça au calme.

Bref, c’est un petit outil en ligne de commande qui ne paye pas de mine mais qui vous sera d’une grande aide pour faire vos benchmarks et comparer le temps d’exécution de vos propres codes ou d’outils tiers.

Amusez-vous bien !

muCommander – Un remplaçant pour votre explorateur de fichiers

Par : Korben

Que vous utilisiez macOS, Windows, ou Linux, il y a peu de chance que vous soyez satisfait de l’explorateur de fichiers intégré de base à votre OS. Ce n’est pas super pratique, parfois, il n’y a pas d’onglet et honnêtement, les fonctionnalités sont assez limitées.

Il est donc temps d’en changer et c’est là qu’entre en scène muCommander. Cet outil disponible en français permet de naviguer dans vos fichiers au travers de plusieurs volets et onglets. Vous pouvez mettre des signets sur vos dossiers / fichiers, et compresser ou décompresser des archives ZIP, RAR, 7z, TAR, GZip, BZip2, ISO/NRG, AR/Deb ou LST sans quitter l’outil.

Vous pouvez naviguer dans muCommander avec des raccourcis claviers et vous pourrez même y connecter vos services de cloud Dropbox / Google Drive ou monter des répertoires distants en FTP, SFTP, SMB, NFS, HTTP, Amazon S3, Hadoop HDFS…etc.

muCommander vous offre également la possibilité de renommer plusieurs fichiers d’un coup et même en envoyer par email, sans ouvrir votre client mail.

Bref, c’est un excellent petit gestionnaire de fichiers dans lequel vous pourrez rapidement prendre vos marques, surtout qu’il est disponible dans différents styles.

C’est sous licence libre et téléchargeable ici.

How to tell ssh client to ignore ssh config file

Par : Vivek Gite
See all UNIX related articles/faq

I have a tutorial that explains the basics of the SSH client configuration file and some of the most common configuration options for Linux and Unix developers or sysadmin. In this quick tip, I will explain how and why you sometimes need to ignore or exclude the ssh client config file under Linux, Unix, *BSD and macOS.

Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit

The post How to tell ssh client to ignore ssh config file appeared first on nixCraft.

Ubuntu 22.04 Set Up UFW Firewall in 5 Minutes

Par : Vivek Gite
See all Ubuntu Linux related FAQ

A Ubuntu 22.04 LTS comes with UFW (uncomplicated firewall) that protects the desktop or server against unauthorized access. UFW is easy to use frontend app for a Linux packet filtering system called Netfilter. Traditionally Netfilter rules are set up or configured using the iptables command by developers and sysadmins. However, new Ubuntu Linux users and developers unfamiliar with firewall concepts find Netfilter syntax confusing. Hence, the ufw project provides easy to use frontend for Ubuntu 22.04 LTS Linux server and desktop. It is so super easy to set up. You can configure UFW in under 5 minutes and secure your host.

Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit

The post Ubuntu 22.04 Set Up UFW Firewall in 5 Minutes appeared first on nixCraft.

How to check if Ansible collection is installed or not

Par : Vivek Gite

Sometimes I need a specific Ansible module from ansible-galaxy to carry out a particular type of automation. But I don't know if it is already installed or not or bundled with Ansible when I installed the latest version on Ubuntu Linux. So here is a quick command-line tip for finding out if the Ansible module is installed or not on your development workstations powered by Linux, Unix or macOS.

Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit

The post How to check if Ansible collection is installed or not appeared first on nixCraft.

Kit E-Paper pour Beolink 5000

Par : Pila
Ma Beolink 5000, après le remplacement de son écran défaillant par un afficheur E-Paper

Produite entre 1991 et 1996 par le fabricant danois Bang & Olufsen, la Beolink 5000 est une télécommande permettant de contrôler les différents appareils de la marque, ainsi que de monitorer leur état grâce à l’écran LCD translucide présent à son extrémité. Ce modèle représentait en son temps l’état de l’art dans le domaine des télécommandes multimédia.

Malheureusement, bon nombre de ces télécommandes ont maintenant 30 ans d’age, et si certains composants vieillissants sont facilement remplacés ( notamment les condensateurs électrochimiques assurant la stabilité de la communication infrarouge ), les adhésifs chargés de maintenir en place l’écran et sa nappe montrent eux aussi des signes de faiblesse, avec pour conséquence un détachement partiel ou complet de la nappe de l’écran, ce dernier perdant de ce fait ses capacités d’affichage. La grande majorité des télécommandes encore existantes sont affectées par cette maladie. Certaines fonctions qui requièrent un écran fonctionnel, telles que le paramétrage de la télécommande, ou des équipements associés, deviennent alors inutilisables.

L’exemplaire en ma possession présentait un état encore plus dramatique, l’écran complètement séparé de la télécommande, la nappe le raccordant à son électronique de contrôle s’étant déchirée sous son poids. J’ai décidé de consacré une partie de mon temps libre de l’année dernière à la conception d’un remplacement.

L’écran LCD d’origine, translucide, et collé sur une plaque de verre trempé, est conçu spécialement pour cette usage, tout comme la nappe qui le relie à son contrôleur. Peu de chances de trouver un remplacement ou un équivalent, sans parler de l’équipement nécessaire au raccord de sa nappe. Ma recherche s’orientait initialement vers les afficheur OLED transparent, ayant dans l’idée d’ajouter une touche moderne à cette télécommande ( les afficheurs OLED étant capable d’émettre leur propre lumière, tandis qu’un afficheur LCD ne peut que la bloquer ). Si je n’ai pas pu identifier de modèle dont les dimensions permettraient son intégration en lieu et place de l’afficheur LCD d’origine, il existe un autre type d’afficheur qui accepte de se prêter à ce jeux : il s’agit d’un afficheur E-Paper.

Utilisés principalement dans les liseuses électroniques, les afficheurs E-Paper ont une apparence semblable à celle du papier, offrant un contraste inégalé, et la capacité de conserver leur affichage sans alimentation, au prix d’un temps de rafraîchissement particulièrement long, pouvant durer plusieurs secondes.

Ayant maintenant une solution possible, je me suis attelé à la conception d’un circuit capable de contrôler l’afficheur E-Paper, occupant le ( faible ) volume mécanique disponible dans la télécommande, et interprétant les commandes d’affichage transmises par le microprocesseur de la télécommande à la place du contrôleur LCD d’origine.

Le PCB supérieur de la Beolink 5000, avec le contrôleur LCD d’origine, la nappe de l’écran LCD sectionnée

La tâche s’est avérée plus ardue que prévu, notamment car l’écran d’origine étant transparent, il est peut être lu d’un coté ou de l’autre en fonction du coté où sont situés les boutons en rapport avec la situation. Dans le cas d’un texte lisible par l’arrière, certains caractères ne sont pas transmis par le microprocesseur sous forme de texte, mais sous forme de bitmap, nécessitant la reconnaissance du caractère correspondant avant de pouvoir l’afficher. ( L’affichage direct des bitmaps n’est pas possible, la résolution de l’afficheur E-Paper n’étant pas un multiple de la résolution de l’afficheur d’origine ).

Le résultat est le suivant, et s’intègre directement dans la télécommande.

Le PCB d’interface, soudé directement sur le PCB supérieur de la télécommande
L’écran de démarrage affichage la version du firmware
Menu de configuration de la télécommande
Au dos, le support de l’afficheur, réalisé par impression 3D
L’afficheur E-Paper raccordé au PCB d’interface

Fonctionnalités principales :

  • Afficheur E-Paper lisible depuis l’avant.
  • Supporte tous les textes et indicateurs de l’afficheur LCD d’origine.
  • Texte en haut résolution ( 29*14 pixels par caractères, contre 7*5 d’origine )
  • Écran de veille.
  • Basse consommation : Pas de dégradation significative de l’autonomie de la télécommande.
  • Indicateur de batterie faible.

Le « clignotement » pendant le rafraîchissement, tel que visible sur la vidéo ci-jointe, est normal et inhérent à ce type d’afficheur.

Un guide d’installation en PDF est disponible ci dessous :

Un kit contient :

  • L’afficheur E-Paper.
  • Le PCB d’interface.
  • Le support de l’afficheur, imprimé en 3D.
  • Un fil ( nécessaire pour raccorder le VBAT sur le PCB )

L’installation nécessite des compétences et de l’équipement de soudure électronique ( notamment une station de soudure, et une station à air chaud ), ainsi que de manipuler délicatement des pièces chaudes ( pour séparer la plaque de verre de l’écran )

Contactez moi pour acheter un kit. Je peux également réaliser l’installation sur votre télécommande.

Liens : Fil sur le Forum Beoworld ( anglais )

Par soucis d’exhaustivité, ci dessous des photos des premières itérations de PCB :

Mk1 PCB : Preuve de concept
Mk2 PCB : Première intégration physique dans la télécommande

Si vous etes interessés, jetez aussi un oeil à BEOTOOTH 5500 : Un récepteur Bluetooth compatible Datalink

How to use htmlq to extract content from HTML files on Linux, macOS or FreeBSD

Par : Vivek Gite

Most of us use love and use the jq command. It works on Linux or Unix-like systems to extract data from JSON documents. Recently I found htmlq, which is like jq and written in Rust lang. Imagine being able to sed or grep for HTML data. We can search, slice, and filter HTML data with htmlq. Let us see how to install and use this handy tool on Linux or Unix and play with HTML data.

Love this? sudo share_on: Twitter - Facebook - LinkedIn - Whatsapp - Reddit

The post How to use htmlq to extract content from HTML files on Linux, macOS or FreeBSD appeared first on nixCraft.

Adding spice to your sudo session with a lecture file on Linux or Unix

Par : Vivek Gite

groot
Despite some severe bugs in sudo, it remains the defacto tool to gain root shell or run command as another user on Linux, macOS, and Unix-like systems. The sudo command allows the system administrator to grant an individual user access to unprivileged commands. For instance, I can give developers the ability to restart the Apache webserver or PHP/Python process on a Linux server. Let us see how to remind developers and unprivileged users about the power of sudo for fun and profit. In this quick tip, I will show you how to add some spice to your sudo session with a lecture file on Linux or Unix.

The post Adding spice to your sudo session with a lecture file on Linux or Unix appeared first on nixCraft.

Critical bug in sudo puts Linux and Unix systems at risk

Par : Vivek Gite

heap based sudo bug
Any logged-in unprivileged user can abuse an old bug in sudo to gain root privileges. It was rated as an important security issue for Linux and Unix-like operating systems. The Qualys research team has discovered the heap overflow vulnerability in sudo itself has been hiding in plain sight for nearly 10 years. The bug allows any local users to gain root access without authentication (no user's password needed). We need to apply patches to our operating systems as soon as possible.

The post Critical bug in sudo puts Linux and Unix systems at risk appeared first on nixCraft.

How to force awk not to print a newline

Par : Vivek Gite

I have two columns (fields) in my text file. I am trying to insert '|
FOO This is a description
BAR Another description for bar
TEXT Another description for TEXT

So I ran awk '{ print $1 "|"; $1=""; print}' input > output but print command is adding a new line:
FOO|
This is a description
BAR|
Another description for bar
TEXT|
Another description for TEXT

Is there any way to tell awk not to print a newline and create the file? Here is what I want so that I can create final HTML table based upon '|'
FOO|This is a description
BAR|Another description for bar
TEXT|Another description for TEXT

The post How to force awk not to print a newline appeared first on nixCraft.

duf – Disk Usage/Free Utility for Linux, BSD, macOS & Windows

Par : Vivek Gite

duf - Disk Usage Free Utility for Linux, BSD, macOS & Windows
We use the df command to show how much disk space is free on mounted file systems in Linux, macOS, and Unix-like systems. We also have the du command to estimate file space usage. We now have another fancy and fantastic looking tool called duf to display statistics on free disk space in Unix, Linux, macOS, *BSD, Android, and Windows written in Golang.

The post duf – Disk Usage/Free Utility for Linux, BSD, macOS & Windows appeared first on nixCraft.

How to write FreeBSD image to USB disk for installation using dd command

Par : Vivek Gite

FreeBSD is an open-source and free Unix-like operating system descended from the Berkeley Software Distribution (BSD). This quick tutorial explains how to download and prepare the USB stick/pen drive to install FreeBSD 12.2 to install FreeBSD using the target computer's USB port.

The post How to write FreeBSD image to USB disk for installation using dd command appeared first on nixCraft.

bpytop – Awesome Linux, macOS and FreeBSD resource monitor

Par : Vivek Gite

byptop
The bashtop is an impressive Linux resource monitor that shows usage and stats for processor, memory, disks, and network. However, it suffers from bash itself, and cross-platform support is a nightmare. Now we have the Python port of bashtop. We can use a resource monitor that shows usage and stats for CPU, RAM, SSD (hard disk), network, and processes information in a lovely format.

The post bpytop – Awesome Linux, macOS and FreeBSD resource monitor appeared first on nixCraft.

Top 7 Linux GPU Monitoring and Diagnostic Commands Line Tools

Par : Vivek Gite

nvtop
A video card is a special circuit board that controls what is displayed on a computer monitor. It is also called a graphics processing unit (GPU), which calculates 3D images and graphics for Linux gaming and other usages. Let us see the top 7 Linux GPU monitoring and diagnostic command-line tools to solve issues.

The post Top 7 Linux GPU Monitoring and Diagnostic Commands Line Tools appeared first on nixCraft.

How To check LXD container BTRFS disk usage on Linux

Par : Vivek Gite
Here is a quick and dirty shell script I put to check LXD container size and how much space they are taking on the BTRFS subvolume. Naturally, you must run the script as a root user, and LXD must be configured with BTRFS storage backend on Linux operating systems. See how to set up and install LXD on Ubuntu 20.04 LTS using the apt command

How To Set Up a Firewall with Awall on Alpine Linux

Par : Vivek Gite

Alpine Wall (Awall) is an easy to use interface to iptables for Alpine Linux users. While iptables and ip6tables is an excellent command, it can be challenging for new Alpine Linux users. The awall tool has easy to follow high-level concepts such as zones, limits, policies, and a single source for both IPv4 and IPv6. This tutorial will show you how to set up a firewall with Awall on Alpine Linux.

The post How To Set Up a Firewall with Awall on Alpine Linux appeared first on nixCraft.

Quick tip: Display banner/message before OpenSSH authentication

Par : Vivek Gite

Want to display a message or banner before OpenSSH (SSHD server) authentication? Try this simple tip to show the banner or ASCII logo on your Linux or Unix system.

The post Quick tip: Display banner/message before OpenSSH authentication appeared first on nixCraft.

tmpmail – A temporary email right from Linux / Unix terminal

Par : Vivek Gite

temp email
Are you looking to send a temporary email right from your Linux or Unix terminal? Look no further. Try tmpmail command-line utility that allows you to generate a temporary email address for receiving emails. Underneath the script uses 1secmail's API to receive the emails.

The post tmpmail – A temporary email right from Linux / Unix terminal appeared first on nixCraft.

How to check if CentOS / RHEL needs a full reboot

Par : Vivek Gite

I am using a CentOS/RHEL 6/7/8 server. How do I check from the command line if a reboot is required for my CentOS host? How do I check if a host powered by CentOS Enterprise Linux needs to reboot after running the yum update command?

The post How to check if CentOS / RHEL needs a full reboot appeared first on nixCraft.

How to save iptables firewall rules permanently on Linux

Par : Vivek Gite

How to save iptables firewall rules permanently on Linux
I am using Debian / Ubuntu Linux server. How do I save iptables rules permanently on Linux using the CLI added using the iptables command? How can I store iptables IPv4 and IPv6 rules permanently on the Debian Linux cloud server?

The post How to save iptables firewall rules permanently on Linux appeared first on nixCraft.

How to install less on CentOS / RHEL / Fedora

Par : Vivek Gite

One of my PHP and bash scripts depends upon less command to display the help system to other users. But, whenever they run less on a particular version of CentOS or RHEL cloud server, they get an error that reads as: "bash: less: command not found." How do I install less utility on CentOS or RHEL (Red Hat Enterprise Linux)/Fedora Linux server? How can I configure Linux containers such as Docker or Podman to install less automatically?

The post How to install less on CentOS / RHEL / Fedora appeared first on nixCraft.

How to add days to date and get new date on Linux

Par : Vivek Gite

I brought eggs from the market, and it says best before 20 days from the date of packing. Say my egg box was packed on 29/July/2020. How do I add days to date using Linux CLI? I want to find out date 29/July/2020 + 20days using the CLI, and how do I do it?

The post How to add days to date and get new date on Linux appeared first on nixCraft.

bashtop – Awesome Linux resource monitor that shows usage and stats for processor, memory, disks, and network

Par : Vivek Gite

bashtop in action
There is a new kid in town for resource monitoring on Linux called bashtop. As the name suggests, the entire tool coded in the bash script itself that displays usage and stats for CPU, RAD, HDD/SSD, network, and other resources. Let us see how to install and use bashtop, which is an awesome Linux resource monitor. You don't need a Linux desktop to install it. You can also install this app on macOS/FreeBSD provided that you meet software requirements.

The post bashtop – Awesome Linux resource monitor that shows usage and stats for processor, memory, disks, and network appeared first on nixCraft.

How to push/send message to iOS and Android from Linux CLI

Par : Vivek Gite

How to push or send message to iOS and Android
One of the essential tasks for developers and sysadmin is to get an alert notification about failed services or running out of disk space and other critical failures. Let us see how to send or push a direct message to a mobile device powered by Apple iOS or Google Android phone.

The post How to push/send message to iOS and Android from Linux CLI appeared first on nixCraft.

bat Linux command – A cat clone with written in Rust

Par : Vivek Gite

bat Linux command in action on my Ubuntu desktop
The cat (short for concatenate) command is one of the most frequently used flexible commands on Linux and Unix-like operating systems. Say hello to bat Linux command, which is a cat command written in Rust programming language. The bat command comes with syntax highlighting, git integration, and works as is a drop-in cat command replacement. Let us see how to install bat on Linux and Unix system for fun and profit.

The post bat Linux command – A cat clone with written in Rust appeared first on nixCraft.

❌