Jump to content

Ldfa

Admin
  • Posts

    29827
  • Joined

  • Last visited

  • Days Won

    1124

Everything posted by Ldfa

  1. Maxthon sera jamais à jour, le dernier moteur de rendu qu'ils installent à chaque rare MAJ a déjà plus de 6 mois d'existence.
  2. Enfin une version "STABLE"
  3. There are new strings to translate in the Maxthon pour Windows project. You were a project participant previously so your help will be appreciated a lot. 1 new string for translation (2 words).
  4. Changements principaux : + Le noyau a été mis à niveau vers la version 140.0.7339.210, apportant des améliorations en termes de performances et d'optimisation de la mise en page, ainsi que des outils de développement actualisés. + Ajout d'une poignée de glissement pour déplacer la fenêtre d'édition des notes. Ajout du tri des résultats de recherche Maxnote par heure et par titre, ajout de la fonction d'impression Maxnote. + Ajout d'une fonction de barre latérale dynamique permettant d'ajouter des icônes d'outils à la barre latérale et d'ouvrir les panneaux de la barre latérale. + Prise en charge de la lecture vidéo HDR en couleurs réelles. * Interaction optimisée avec le zoom de la page : ajout de la prise en charge d'un rapport de zoom personnalisé. Cliquez à gauche du bouton de zoom pour modifier le rapport. - Extensions mises à niveau vers la version V3, offrant un environnement d'exécution des extensions plus sûr et plus efficace. - Correction de vulnérabilités à haut risque. - Correction de problèmes de plantage connus.
  5. Maxthon 7.5.2.5400 stable pour Windows est sorti aujourd'hui, il apporte son lot de nouvelles fonctionnalités, d'améliorations et de corrections de bugs. Téléchargement : https://github.com/maxthon/Maxthon/releases/ Les changements en français sont là. Vous pouvez également vous abonner au groupe Telegram NBdomain & MX6 pour faire remonter vos demandes d'améliorations et bugs rencontrés. Source : https://forum.maxthon.com/d/3301-maxthon-pc-7525400
  6. Mon ami IA : https://www.01net.com/actualites/friend-le-pendentif-ia-qui-promet-de-combattre-la-solitude-en-vous-ecoutant-en-permanence.html
  7. Je ne comprends pas vraiment ce que tu cherches, une copie d'écran de la fonction recherchée sur Chrome serait la bienvenue. Est-ce que tu as coché cette option ? En cliquant sur Jouer dans... tu peux afficher la vidéo dans une petite fenêtre détachée de Maxthon, est-ce ce que tu recherches ?
  8. Je termine encore une fois Platine cette semaine ici aussi.
  9. Un article très complet sur le sujet chez IT-Connect : Pour l'installer chez soi, sans dépendre de l'extérieur :
  10. IT-Connect Publié le 2 juin 2025 Par Mickael Dorigny it-connect.fr Environ 7 minutes de lecture I. Présentation Dans cet article, je vous présente LanguageTool, un correcteur d’orthographe et de syntaxe intelligent, basé sur l’IA et intégré directement à votre navigateur. Ce n'est pas tout : en plus d'être open source, il s'intègre à d'autres applications ! Quelle que soit l’époque où les technologies utilisées, les fautes d’orthographe ont la vie dure. Les technologies actuelles nous permettent cependant d’avoir une aide supplémentaire pour identifier et corriger nos fautes d’orthographe, de frappes et de syntaxe. LanguageTool fait partie de ces technologies. Nous allons voir comment l’installer rapidement sur les principaux navigateurs, mais aussi améliorer la confidentialité via une installation locale basée sur Docker. En effet, LanguageTool est un correcteur d'orthographe que vous pouvez auto-héberger (en local sur votre machine ou sur un serveur). Note : LanguageTool se présente comme une alternative à d'autres solutions comme Antidote et Grammarly. Cliquez ici pour regarder la vidéo sur YouTube II. Présentation du correcteur orthographique LanguageTool LanguageTool est un outil gratuit et open source qui permet de vérifier en temps réel la grammaire, l'orthographe et le style de vos textes. Il est disponible sous forme d'extension pour les navigateurs, mais aussi en tant qu'application locale (utile pour l'utiliser dans Word ou d'autres applications) ou service en ligne. Il prend en charge plus de 30 langues, même s’il est probable que vous n’en utilisiez qu’une ou deux. Remarque : il existe également une version Premium de LanguageTool, avec des fonctionnalités supplémentaires. Les tarifs sont raisonnables, notamment pour un usage personnel. Ce qui est particulièrement intéressant avec cet outil de relecture est qu’il s’intègre parfaitement à tout champ d’édition de n’importe quelle application web (y compris l’interface WordPress dans laquelle je saisis ce texte). Que ce soit l’interface web d’un webmail, un tchat en ligne ou un blog, LanguageTool est en capacité d’analyser le texte saisi par l'utilisateur. Une fois installé, la relecture de LanguageTool se matérialise par la présence de l’icône suivant proche du champ de saisie : Présence de la fenêtre LanguageTool dans un formulaire web. Cliquer dessus permet d’avoir un pop-up qui détaille les fautes découvertes et les corrections proposées. Dans un texte relu, toutes les erreurs sont signalées par un soulignage en rouge (mot inconnu, faute ou typo) ou jaune (syntaxe, formulation, etc.) : Corrections proposées par LanguageTool. Également, lorsque l’on écrit une phrase beaucoup trop longue, il est possible que l’outil la souligne en violet. Cela permet de montrer qu’il y a une phrase qui pourrait être réécrite de façon plus lisible : Signalement d'une phrase trop longue dans un mail par LanguageTool. En complément, il est aussi possible d’accéder à une interface dédiée dans laquelle saisir un texte, dont on pourra ensuite copier la version relue et corrigée ailleurs : Interface web dédiée de LanguageTool. LanguageTool dispose de nombreuses options comme l’activation du mode méticuleux, qui permet de passer en revue le registre des mots utilisés, l’ouverture du pop-up sur un double clic, la désactivation rapide via un raccourci, etc. Dans ces options, il est aussi possible d’ajouter des mots à notre dictionnaire personnel (qui seront ignorés par la suite), de choisir les langues qui nous intéressent ou activer/désactiver l’analyse de LanguageTool pour certains sites, etc : Extrait de quelques-unes des options du plugin LanguageTool. Pour finir sur cette brève présentation, il s’agit d’un outil qui m’est devenu indispensable. Il n’est certes pas parfait, mais pour une version gratuite qui n’expose quasiment pas de limite pour une taille raisonnable de texte et une intégration dans les navigateurs, difficile d’avoir mieux ! III. Installation de LanguageTool sur un navigateur L'installation de LanguageTool sur un navigateur est simple et rapide, elle se fait de façon classique. Voici les étapes à suivre pour les principaux navigateurs : A. Google Chrome Ouvrez Google Chrome et rendez-vous sur le Chrome Web Store. Recherchez "LanguageTool" dans la barre de recherche. Cliquez sur "Ajouter à Google Chrome" puis sur "Ajouter l'extension". Une fois installé, l'icône de LanguageTool apparaîtra dans la barre d'outils de votre navigateur. B. Mozilla Firefox Ouvrez Firefox et allez sur le site Firefox Add-ons. Recherchez "LanguageTool" dans la barre de recherche. Cliquez sur "Ajouter à Firefox" puis sur "Ajouter". L'extension sera ajoutée à votre navigateur et vous pourrez commencer à l'utiliser. C. Microsoft Edge Ouvrez Microsoft Edge et accédez aux Microsoft Edge Add-ons. Recherchez "LanguageTool" dans la barre de recherche. Cliquez sur "Obtenir" puis sur "Ajouter l'extension". L'extension sera installée et prête à l'emploi. Quel que soit le navigateur, la présence de l’extension se manifeste par cet icône dans la barre supérieure : Icône LanguageTool dans la barre du navigateur. Mais également par une petite fenêtre cliquable dès que l’on commence à saisir du texte, comme vu plus haut. Au-delà de l'extension pour navigateur Web, il existe aussi des applications LanguageTool, notamment pour Windows, macOS, iOS et des modules Thunderbird et Outlook. L'installation sur le système d'exploitation permet d'en profiter dans d'autres applications (Word, par exemple). Attention à la confidentialité ! Il va de soi que le petit code d’un plugin ne permet pas d’effectuer des analyses syntaxiques et orthographiques avancées comme le fait LanguageTool. Cela signifie que le texte saisi est analysé sur des serveurs hors de votre ordinateur. Si la confidentialité est de mise (notamment dans le contexte professionnel), sachez qu’il existe des solutions. Le serveur LanguageTool peut être déployé en local, sur un serveur d’entreprise et notamment via Docker. Ainsi, tout le texte saisi est analysé par des systèmes que vous maitrisez. C’est ce que nous allons voir par la suite. Pour faire simple, nous allons déployer le serveur LanguageTool sur un Docker local à notre système. Cela permet de démontrer rapidement qu’une utilisation de LanguageTool respectueuse de la confidentialité est possible. IV. Installation en local de LanguageTool via Docker Pour ceux qui souhaitent une solution plus privée et sécurisée, il est possible d'installer LanguageTool en local via Docker. Une fois que Docker est en place et fonctionnel sur notre système, on commence par télécharger l’image Docker de LanguageTool. Il n’existe pas d’image Docker officielle de LanguageTool. Mais, certains dépôts Github proposent des DockerFile et sont référencés dans le dépôt GitHub officiel de la solution. Nous utiliserons ceux-ci en priorité. Source Docker Hub utilisée : github.com/Erikvl87/docker-languagetool Pour ma part, je vais créer un répertoire dans ~/Documents/ pour le déploiement : mkdir -p ~/Documents/LanguageTool/ngrams Comme vous pouvez les voir, j’ai créé un répertoire /ngrams/ dans lequel nous allons stocker des fichiers à télécharger depuis le site officiel. Nous pouvons voir les "ngrams" comme des dictionnaires ou bases de données de mots sur lequel LanguageTool se base pour trouver des erreurs. Ils sont regroupés par langue, nous devons donc récupérer le "ngram" français (ngrams-fr-<data>.zip, 1,8 Go) sur l’URL suivante : languagetool.org/download/ngram-data/ Je décompresse ensuite son contenu dans le répertoire ~/Documents/LanguageTool/ngrams/. Dans un second temps, nous pouvons télécharger et déployer l’image Docker erikvl87/languagetool en spécifiant un volume partagé avec l’hôte afin qu’il puisse trouver nos ngrams : docker run --name langtool -p 8010:8010 -d -e langtool_abTest=null -e langtool_abTestClients=null -e langtool_languageModel=/ngrams -v ~/Documents/LanguageTools/ngrams/:/ngrams:ro erikvl87/languagetool L’option -p permet d’exposer le port TPC/8010 du Docker sur le réseau, pour que le service soit accessible à d’autres systèmes. Une fois ce déploiement réalisé, nous pouvons aller dans la configuration du plugin LanguageTool de nos clients et nous rendre dans la partie Paramètres avancés, sélectionner Autre serveur, et saisir l’URL suivante : http://192.168.56.122:8010/v2 (pensez à adapter l’IP/DNS de la cible à votre contexte) : Dans mon contexte, le conteneur Docker LanguageTool est sur un autre système qui expose le port TCP/8010 sur le réseau et qui possède l’IP 192.168.56.122. Dans le cas d’une utilisation à partir d’un conteneur déployé sur le même système que votre plugin, vous pourrez tout à fait saisir http://127.0.0.1:8010/v2. À l’inverse, dans un environnement d’entreprise, il s’agira plutôt d’un nom DNS. Paramétrage du serveur LanguageTool dans la configuration du plugin. Bref, une fois cette configuration en place, pensez bien à paramétrer explicitement les langages à relire, au risque d’avoir de mauvaises surprises. Il faut pour cela vérifier la configuration des langues prises en compte (Options de langue). Pour ma part, j’utiliserai uniquement le français : Paramétrage des langues prisses en charge par LanguageTool. Une fois cette configuration sauvegardée, vous pourrez retourner dans n’importe quel champ de saisi de n’importe quel site et constater que LanguageTool relit bien votre texte : Fonctionnement du plugin LanguageTool avec un serveur local. Au passage, vous pourrez rapidement constater que la relecture par LanguageTool consomme beaucoup de ressources serveur. C’est une chose à considérer si vous le mettez en place au sein d’une entreprise avec plusieurs centaines d’utilisateurs : Consommation CPU lors de la relecture LanguageTool (côté serveur). L’installation du serveur LanguageTool sur un serveur dédié (sans Docker) est décrite dans la documentation GitHub (github.com/languagetool-org/languagetool). V. Conclusion J’utilise LanguageTool quotidiennement et le déploiement du serveur via Docker est largement suffisant pour mes besoins. Les fonctionnalités et l’intégration de LanguageTool dans tous les champs des applications web est vraiment un gros plus. N’hésitez pas à tester le plugin sur votre navigateur, mais n’oubliez pas l’aspect confidentialité si vous êtes sur un poste d’entreprise ! Si vous avez un NAS Synology, vous pouvez le déployer en local à l'aide de Docker en suivant ce tutoriel : Comment installer LanguageTool sur un NAS Synology ? Co-fondateur d'IT-Connect.fr. Auditeur/Pentester chez Orange Cyberdéfense. Afficher l’article complet
  11. Pour l'installer sur Proxmox : https://community-scripts.github.io/ProxmoxVE/scripts?id=languagetool
  12. Cachem Publié le 4 février 2026 Par Fx cachem.fr Environ 1 minute de lecture LanguageTool est un outil gratuit de correction d’orthographe et de grammaire. Il dépanne au quotidien pour rédiger un e-mail, un commentaire ou un document plus long. Mais une question revient souvent : où partent les données ? Quel est le niveau de confidentialité ? Que se passe-t-il si je n’ai plus de connexion Internet ? J’ai une bonne nouvelle pour vous, il est possible d’installer LanguageTool sur un NAS. Vous allez voir, c’est assez simple 🙂 LanguageTool sur son NAS LanguageTool peut fonctionner en mode serveur via une API HTTP. Cette configuration permet aux extensions de navigateur par exemple de s’y connecter sans jamais envoyer de données vers Internet. Si vous souhaitez l’installer sur votre NAS, il faut que ce dernier soit capable d’executer des conteneurs Docker. Aussi, LanguageTool est relativement gourmand… il consomme rapidement environ 765 Mo de RAM. Si votre NAS ne dispose que de 1 Go de RAM, ce n’est clairement pas recommandé. Installer sur un NAS Synology Pour cette installation, j’ai choisi l’image Docker erikvl87/languagetool, qui est recommandée par l’éditeur de LanguageTool. Préparation des dossiers Ouvrez File Station Allez dans le dossier docker Créez un sous-dossier nommé languagetool À l’intérieur de celui-ci, créez un dossier nommé ngrams Ce dossier ngrams servira à stocker vos modèles linguistiques personnalisés. Création du conteneur Docker Ouvrez Container Manager Allez dans Projet → Créer Renseignez les informations suivantes : Nom du projet : languagetool Chemin : docker/languagetool Source : Créer un fichier docker-compose.yml Collez ensuite le contenu suivant : services: languagetool: image: erikvl87/languagetool container_name: languagetool restart: unless-stopped volumes: - ./ngrams:/ngrams environment: - Java_Xms=512m - Java_Xmx=1g - langtool_languageModel=/ngrams ports: - 8010:8010 Voici ce que vous devriez avoir : Le port 8010 exposera l’API LanguageTool sur le NAS et langtool_languageModel=/ngrams indique l’emplacement des données linguistiques. Cliquez sur Suivant, puis sur Effectué… et patientez quelques minutes le temps que le conteneur démarre. Configuration de LanguageTool dans le navigateur Côté navigateur : Installez l’extension LanguageTool Cliquez sur l’icône de l’extension Ouvrez les paramètres via la roue crantée Descendez jusqu’à « Paramètres avancés (uniquement pour les professionnels) » Dans Serveur LanguageTool, sélectionnez : Autre serveur — le serveur LanguageTool doit fonctionner ici Saisissez l’adresse suivante : http://AdresseIPduNAS:8010/v2/ C’est terminé ! En synthèse Vous utilisez désormais LanguageTool en local, sans aucune connexion à Internet. Toutes les analyses restent strictement sur votre NAS : vos données restent chez vous… vraiment. Afficher l’article complet
  13. Je suis encore Platine cette semaine, malgré le peu de temps passé sur le jeu, je suis à fond sur Arc Raiders en ce moment !
  14. Je te conseillerais d'installer la dernière version 7.5.2.5200 en date, même si c'est une version bêta, elle semble assez stable et fonctionnelle. Tu bénéficieras ainsi de la dernière version de Chromium. Si tu veux essayer sans risque, installe la version portable dans un dossier à part.
  15. OpenClaw, c’est le nom du nouvel agent IA qui fait le buzz sur Internet : https://www.01net.com/actualites/on-vous-dit-tout-sur-openclaw-la-nouvelle-ia-autonome-dont-tout-le-monde-parle.html
  16. Pour l'installer sur Proxmox : https://community-scripts.github.io/ProxmoxVE/scripts?id=nginxproxymanager PS : Le script est suspendu temporairement le temps de correction d'un problème de clé PGP avec OpenSentry. https://github.com/community-scripts/ProxmoxVE/issues/11406
  17. Utilisé par des millions d’utilisateurs, le correcteur d’orthographe et de grammaire multilingue LanguageTool corrige et reformule vos phrases en temps réel. C'est un outil qui peut être utilisé en ligne : https://languagetool.org/editor/new Mais, c'est aussi une extension pour Chrome qui vous permettra de ne plus commettre d'erreur, lorsque vous saisissez du texte.
  18. Korben.info Publié le 3 février 2026 Par Korben, Manuel Dorne korben.info Environ 9 minutes de lecture L'autre jour, je voulais juste exposer un petit service tournant sur mon NAS pour y accéder à distance quand je suis en déplacement. Alors je me suis dit "Allez, je vais faire ça propre avec Traefik" mais bon, debugger du fichier YAML parce qu'on oublie des indentations à un moment ça casse la tête. J'ai +40 balais et pas que ça à foutre. Si vous hébergez vos propres services à la maison (self-hosting powaaaah !) et que vous êtes un peu bordélique comme moi, vous installez un truc, puis un autre, et vous finissez avec une collection de ports impossible à mémoriser du genre monip:8080, monip:32400, monip:9000… Aarrgh, l'enfer !!! Et ne me lancez pas sur la gestion des certificats SSL !! Si vous voulez faire ça bien, faut générer des certificats Let's Encrypt à la main pour chaque service, modifier les fichiers de conf Nginx en priant pour ne pas oublier un point-virgule… et j'en passe et des pas mûres… Alors je sais, oui ça nous occupe et pendant ce temps là, on n'est pas dehors en train de voler des voitures mais j'sais pas vous, moi j'ai mieux à faire. Hé bien, figurez-vous les copains, qu'il existe un outil qui transforme ce cauchemar en promenade de santé. Ça s'appelle Nginx Proxy Manager, et une fois que vous aurez lu mon article et testé vous penserez : "Mais pourquoi je me suis emmerdé la vie pendant tout ce temps, mortecouille ?!". Nginx Proxy Manager, c'est quoi ce truc ? En gros, c'est une interface graphique super propre pour gérer Nginx. Au lieu de taper des lignes de commandes et d'éditer des fichiers de config obscurs, vous avez un beau tableau de bord pour : Rediriger vos domaines (ex: plex.mondomaine.fr) vers vos conteneurs Docker. Gérer vos certificats SSL (HTTPS) automatiquement. Sécuriser l'accès à certains services avec un mot de passe. Mais en vrai, c'est plus riche que ça. Dans la barre du haut, vous avez tout ce qu'il faut pour piloter votre reverse proxy comme un adulte responsable : des hosts (proxy, redirections, streams, 404), des certificats (Let's Encrypt ou certifs locaux), des utilisateurs, des règles d'accès (Access Lists), et même des logs d'audit pour savoir qui a fait quoi (au cas où un de vos potes "teste un truc vite fait" et casse tout). C'est le reverse proxy pour ceux qui veulent que ça marche, tout de suite, sans devenir ingénieur réseau bac+12 ou devoir se taper 2h d'explications IRL d'un barbu qui pue de la gueule ^^. Installation en 3 minutes chrono (avec Docker) Bon, on ne va pas y passer la nuit. La méthode la plus propre, c'est évidemment Docker Compose. Si vous ne l'avez pas, installez-le (allez, un petit apt install docker-compose et on n'en parle plus). Créez un dossier nginx-proxy-manager et collez-y ce fichier docker-compose.yml : version: '3.8' services: app: image: 'jc21/nginx-proxy-manager:latest' restart: unless-stopped ports: - '8080:80' # Port HTTP public - '8181:81' # Port d'administration (à garder pour vous) - '8443:443' # Port HTTPS public volumes: - ./data:/data - ./letsencrypt:/etc/letsencrypt db: image: 'jc21/mariadb-aria:latest' restart: unless-stopped environment: MYSQL_ROOT_PASSWORD: 'npm' MYSQL_DATABASE: 'npm' MYSQL_USER: 'npm' MYSQL_PASSWORD: 'npm' volumes: - ./mysql:/var/lib/mysql Petit piège à éviter : Faites gaffe si vous avez déjà un serveur web (Apache ou Nginx) qui tourne sur la machine hôte. Il va falloir couper le service ou changer les ports, sinon Docker va vous jeter une erreur parce que le port 80 est déjà pris. Du coup, vérifiez bien avec un petit netstat -tulpn | grep 80 avant de lancer la sauce. Ah oui, et si vous utilisez un pare-feu comme UFW (ce que je vous recommande chaudement), n'oubliez pas d'ouvrir le port 81 : ufw allow 81. Sinon, vous allez pleurer devant une page blanche et vous demander pourquoi ça marche pas. Ensuite, lancez la bête : docker-compose up -d Et voilà ! C'est tout. Votre serveur tourne. Si vous avez des erreurs, c'est probablement parce que vos ports sont déjà utilisés. Ou que les dossiers data, Let's Encrypt et MySQL n'existent pas encore. Moi j'ai ça sur mon NAS : La configuration que même ma grand-mère pourrait le faire Ouvrez votre navigateur et allez sur http://votre-ip:8181 et créez vous un compte. Une fois dedans, pour exposer un service, c'est ridicule tellement c'est easyyyy Cliquez sur "Add Proxy Host". Entrez votre nom de domaine (ex: nextcloud.mondomaine.fr). Indiquez l'IP de la machine et le port du service (ex: 8080). Allez dans l'onglet "SSL", cochez "Request a new SSL Certificate" et "Force SSL". Sauvegardez. En fait, le seul truc qui peut coincer, c'est la propagation DNS. Si vous venez d'acheter votre nom de domaine il y a 5 minutes, pas de panique si Let's Encrypt refuse de générer le certificat. Attendez une petite heure et réessayez. C'est classique. Et hop, fini. Votre service est accessible en HTTPS, avec le petit cadenas vert qui va bien. Nginx Proxy Manager s'occupe de discuter avec Let's Encrypt et de renouveler le certificat tout seul. C'est carrément magique. Tour d'horizon des fonctionnalités qui sauvent des week-ends Parce que oui, Nginx Proxy Manager ne fait pas "juste" proxy + "cadenas". Dans le menu Hosts, vous avez plusieurs types de trucs à créer, et chacun sert à un usage bien précis. Et côté Certificats et sécurité, il y a de quoi faire sans sortir le marteau-piqueur. Certificats Let's Encrypt (HTTP et DNS) + certifs locaux On va commencer par le sujet qui donne des boutons : les certificats. Dans l'onglet Certificates, vous pouvez gérer tout ça au même endroit : Let's Encrypt en HTTP-01 : le classique. NPM ouvre la voie, répond au challenge, et basta. Pratique pour un service.mondomaine.fr exposé "normalement". Let's Encrypt en DNS-01 : là, c'est le mode "j'ai compris la vie". Vous pouvez valider le certificat via votre DNS (donc sans dépendre d'un port 80 accessible), et surtout ça permet les wildcards du style *.mondomaine.fr. Donc un seul certif et roule ma poule, même si vous ajoutez 12 sous-domaines demain à 3h du mat. Certificats locaux : vous pouvez aussi importer un certificat existant (genre un certif de votre boîte, un truc interne, un CA maison, ou même un self-signed si vous aimez vivre dangereusement). Ça évite de dépendre de Let's Encrypt si vous êtes en mode "tout en local, rien sur Internet". Et le meilleur c'est que NPM gère le renouvellement automatique. Donc plus de rappel calendrier "renouveler les certifs" tous les 2 mois, sinon c'est le drame et tout le monde vous écrit "ça marche plus ton truc". Plusieurs comptes, parce que tout le monde n'est pas "admin" Dans Users, vous pouvez créer plusieurs comptes pour accéder à l'interface. Typiquement : un compte admin pour vous, le chef, le patron, le seigneur des reverse proxies. un compte "moins dangereux" pour quelqu'un qui doit juste consulter ou bidouiller un truc sans toucher à toute l'infra. Et ça, couplé aux Audit Logs (j'y reviens juste après), c'est très pratique quand plusieurs personnes mettent les mains dedans. Parce que "c'est pas moi, j'ai rien touché" est une phrase universelle, on la retrouve dans toutes les cultures. Access Lists, le videur à l'entrée Alors ça, c'est une des fonctions les plus sous-cotées. Les Access Lists permettent de mettre en place des règles d'accès et de les réutiliser partout : Basic Auth (login/mot de passe) : parfait pour protéger une appli pas prévue pour être publique, ou un petit outil d'admin que vous ne voulez pas exposer "en clair". Allow/Deny par IP : le top pour dire "seulement depuis mon IP / mon VPN / mon réseau". Et là, même si quelqu'un devine votre URL, il se prend un mur. Vous créez une Access List une fois, et ensuite vous l'appliquez à vos Proxy Hosts. Du coup, pas besoin de refaire 50 fois la même conf. C'est propre, c'est net, c'est carré. Les redirections propres (HTTP -> HTTPS, domaine A -> domaine B, etc.) Besoin de rediriger un vieux domaine vers un nouveau ? Ou de faire un joli http:// qui part systématiquement en https:// ? Les Redirection Hosts servent exactement à ça. C'est bête mais ça évite d'aller trifouiller des règles Nginx à la main. Exemples typiques : mondomaine.fr -> www.mondomaine.fr ancientruc.mondomaine.fr -> nouveautruc.mondomaine.fr http -> https (pour les retardataires) Streams - Quand ce n'est pas du HTTP mais que vous voulez quand même un reverse proxy Le web, c'est bien, mais tout n'est pas en HTTP. Certaines applis parlent en TCP/UDP (bases de données, services réseau, protocoles chelous, etc.). C'est là que Streams entrent en jeu. Cette fonctionnalité vous permet de proxyfier des flux réseau, genre "ce port externe pointe vers ce port interne". Alors oui, c'est plus "brut" que les Proxy Hosts, mais ça dépanne vraiment quand vous avez un service qui n'a rien à faire derrière un vhost HTTP. Et ça se configure aussi en 2 clics, sans incantations démoniaques. 404 Hosts - La sortie de secours Les 404 Hosts, c'est la petite finition qui fait plaisir (non, rien à voir avec votre salon de massage préféré). Vous pouvez définir un "host poubelle" qui répond proprement quand quelqu'un tape un domaine qui n'existe pas chez vous, ou quand un bot scanne votre serveur en espérant trouver /phpmyadmin par magie. Au lieu de laisser traîner une réponse moche ou ambiguë, vous renvoyez une 404 nette, propre, assumée. C'est pas de la sécurité absolue, mais c'est une bonne hygiène, et ça évite de donner trop d'infos aux curieux. Audit Logs Dans Audit Logs, vous avez l'historique des actions effectuées dans l'interface : création/modif de hosts, changements de certifs, etc. C'est le genre de truc dont on se fout… jusqu'au jour où on en a besoin. Et là, vous êtes content de pouvoir remonter le film de l'horreur. Et enfin, mon bonus : Le mode "je sais ce que je fais" (les options avancées Nginx) Et si un jour vous voulez aller un cran plus loin, NPM permet aussi d'ajouter des réglages plus "Nginx pur jus" par host (headers, règles, conf custom). Donc vous commencez en mode clic-clic, et si vous devenez un peu psycho sur l'optimisation, vous pouvez aussi affiner. Sans tout casser, normalement. 2/3 conseils de daron pour éviter les boulettes Ne laissez pas l'admin ouvert au monde : le port 8181 (ou votre port d'admin) c'est "pour vous". Si possible, limitez-le via pare-feu / VPN / IP autorisées. C'est le panneau de commande de votre château, pas un distributeur de bonbons. Utilisez les Access Lists pour tout ce qui est sensible : dashboards, outils d'admin, services pas prévus pour Internet, etc. Pensez au DNS-01 si vous voulez des wildcards ou si vous n'avez pas envie d'exposer le port 80. Et par rapport aux autres ? Je vous vois venir les puristes : "Oui mais Traefik c'est mieux car c'est dynamique". C'est vrai. J'ai testé Traefik, et c'est une tuerie pour les environnements qui bougent tout le temps. Mais sa config en YAML peut vite devenir une usine à gaz si vous débutez. Caddy est top aussi (un seul fichier de conf), mais il faut quand même mettre les mains dans le cambouis. Perso, je pense que Nginx Proxy Manager est un excellent choix pour un homelab par exemple. C'est un peu le choix du confort, celui des grosses feignasses comme moi parce que c'est visuel, c'est du clic-bouton clic clic, et pour un petit serveur perso, c'est franchement imbattable. Bref, si vous galérez encore avec vos vhosts Nginx, arrêtez de vous faire du mal. Installez ça, et profitez de la vie (et de vos week-ends). Nginx Proxy Manager c'est par ici ! Afficher l’article complet
  19. Changements principaux : + Le noyau a été mis à niveau vers la version 140.0.7339.210, apportant des améliorations en termes de performances et d'optimisation de la mise en page, ainsi que des outils de développement actualisés. + Ajout d'une poignée de glissement pour déplacer la fenêtre d'édition des notes. Ajout du tri des résultats de recherche Maxnote par heure et par titre, ajout de la fonction d'impression Maxnote. + Ajout d'une fonction de barre latérale dynamique - permet d'ajouter des icônes d'outils à la barre latérale et d'ouvrir les panneaux de la barre latérale. + Prise en charge de la lecture vidéo HDR en couleurs réelles. * Interaction optimisée avec le zoom de la page : ajout de la prise en charge d'un rapport de zoom personnalisé. Cliquez à gauche du bouton de zoom pour modifier le rapport. * Extensions mises à niveau vers la version V3, offrant un environnement d'exécution des extensions plus sûr et plus efficace. - Correction de vulnérabilités à haut risque. - Correction de problèmes de plantage connus.
  20. Maxthon 7.5.2.5200 Bêta pour Windows est sorti aujourd'hui, il apporte son lot de nouvelles fonctionnalités, d'améliorations et de corrections de bugs. Téléchargement : https://github.com/maxthon/Maxthon/releases/ Les changements en français sont là. Vous pouvez également vous abonner au groupe Telegram NBdomain & MX6 pour faire remonter vos demandes d'améliorations et bugs rencontrés. Source : https://forum.maxthon.com/d/3234-maxthon-pc-7525200-beta
  21. Geeek Publié le 1 février 2026 Par Ludovic Toinel geeek.org Environ 4 minutes de lecture Impossible d'être passé à côté sur X ou GitHub ces dernières semaines ! OpenClaw est partout. Anciennement connu sous les noms de Clawdbot puis Moltbot, cet assistant open-source ne se contente pas de rédiger des poèmes ou de résumer des mails. C'est un agent proactif, une IA qui « fait vraiment des choses » directement sur vos machines. Mais derrière les démonstrations virales se cache une réalité plus complexe : entre dramas juridiques, failles de sécurité béantes et comportements autonomes inquiétants, OpenClaw est sans doute le projet le plus fascinant et le plus chaotique du moment. Voici 5 points pour comprendre le phénomène en détail. 1. Ce n’est pas un chatbot, c'est un agent avec une capacité d'interaction Oubliez ChatGPT ou Claude.ai dans votre navigateur. OpenClaw ne discute pas, il exécute. C’est un agent capable de manipuler votre navigateur, d'écrire des fichiers locaux, de lancer des commandes dans votre terminal ou de réserver un hôtel à votre place. Souveraineté totale : Il tourne localement (PC, Mac Mini, ou même Raspberry Pi). Omniprésence : Il s'intègre à vos apps habituelles (Telegram, Slack, WhatsApp). Proactivité : Contrairement aux assistants passifs, il peut vous interpeller de lui-même : "Hey, ton serveur est tombé, je le redémarre ?" 2. Un changement de nom qui a viré au braquage crypto Le succès fulgurant de Clawdbot a rapidement fait grincer des dents chez Anthropic. Le géant de l'IA a envoyé ses avocats pour protéger la marque "Claude". Le créateur du projet, Peter Steinberger, a alors rebaptisé le projet Moltbot (référence à la mue du homard, 🦞). Le chaos a commencé lors du transfert de comptes : en libérant l'ancien pseudo @clawdbot, des bots l'ont squatté en moins de 10 secondes pour lancer un scam crypto. Un faux token ($CLAWD) a ainsi atteint une capitalisation de 16 millions de dollars en quelques heures sur le dos de la communauté. Le projet a finalement été renommé OpenClaw pour marquer son ADN open-source. 3. Un « cauchemar absolu » pour la cybersécurité C’est le point qui fâche. Si OpenClaw a des mains, il laisse aussi de sacrées empreintes. Des experts de chez Cisco ont tiré la sonnette d’alarme sur plusieurs vulnérabilités critiques : Mots de passe en clair : L'outil stocke souvent vos clés API et identifiants sans chiffrement dans ~/.clawdbot. Instances exposées : Plus de 1 200 instances ont été trouvées sur le Web sans aucune authentification, offrant un accès root potentiel aux pirates. Vous pouvez les trouver avec Shodan.io. Injections de Prompt : Un simple mail malveillant lu par l'IA pourrait contenir des instructions cachées lui ordonnant d'effacer votre disque dur. 💡 Le conseil sécu : Si vous voulez tester OpenClaw, isolez-la impérativement sur un VPS dédié ou une machine secondaire (sandbox) avec des clés API aux droits limités. 4. Le paradoxe pour Anthropic et Apple Le succès d'OpenClaw crée des situations assez ironiques pour les GAFAM : Anthropic : Ils ont attaqué le projet alors qu'OpenClaw est devenu leur meilleur commercial. L'agent consomme énormément de tokens via l'API Claude Opus (le modèle le plus coûteux), générant des revenus massifs pour l'entreprise qui a failli couler le projet. Apple : On voit des développeurs acheter des Mac Mini uniquement pour en faire des serveurs d'agents IA, préférant investir dans du hardware Apple pour... éviter d'utiliser Siri, jugé trop limité par rapport à cette solution open-source. C'est vrai que je ne l'ai pas indiqué dans cet article, mais OpenClaw fonctionne parfaitement bien avec des LLM en local sur Ollama. 5. Quand l’IA commence à avoir ses propres projets Le plus étrange ? L'émergence de comportements non programmés. Plusieurs utilisateurs ont rapporté que leur instance s'était mise à parler de manière autonome. Dans un cas, l'IA a configuré elle-même un module vocal via une API externe pour "faire son rapport" oralement. Plus intrigant encore, des agents ont créé un site nommé molt.church, une sorte de système de croyance numérique, le Crustafarianisme, dont l'accès est strictement interdit aux humains. Plus de 30 000 agents (Clawd, Molto, OpenClaw) y échangent en continu, sans aucune intervention humaine. Est-ce le début de Skynet ? Ces comportements "émergents" montrent que nous entrons dans une phase où l'IA commence à interagir avec le monde de façon imprévisible. En résumé : Futur brillant ou boîte de Pandore ? OpenClaw est la preuve que l'ère des agents autonomes est là en 2026 et de plus Opensource. C'est puissant, c'est grisant pour tout bidouilleur qui se respecte, mais c'est encore le Far West. Nous donnons littéralement les clés de notre vie numérique à un homard de code dont nous ne maîtrisons pas encore toutes les réactions. Les faits divers autour d'OpenClaw débutent tout juste, je pense que cette technologie va occuper quelques news croustillantes dans les prochaines semaines. Et vous, seriez-vous prêt à laisser une IA gérer votre terminal et vos accès serveurs ? On en discute dans les commentaires ou sur le serveur Discord Geeek ! https://github.com/openclaw https://openclaw.ai/ Lire d'autres articles de cet auteur Ludovic Toinel Geeek.org est un blog 100% indépendant depuis 21 ans. Passionné de web, dev et tech, il réunit plus de 20k lecteurs sur le feed RSS et 90k visites mensuelles. Abonnez-vous ! Afficher l’article complet
  22. www.microlinux.fr microlinux.fr Environ 5 minutes de lecture Debian serveur Postfix est un serveur mail, et plus exactement un MTA (Mail Transfer Agent). Il gère l'envoi et la réception de mails par Internet en utilisant le protocole SMTP. Le monde de l'Open Source offre toute une panoplie de MTA, parmi lesquels on trouve Postfix, Exim, Qmail et Sendmail. Dans ce premier article sur les serveurs de messagerie, nous allons configurer Postfix sur une machine publique tournant sous Debian 13 Trixie. Notre premier objectif, ce sera l'envoi des messages du système comme par exemple les notifications du système de sauvegardes automatiques Rsnapshot. Prérequis Avant de mettre la main à la pâte, je vérifie si le serveur n'est pas blacklisté quelque part : https://mxtoolbox.com/blacklists.aspx Installation Postfix est fourni par les dépôts officiels de la distribution : $ sudo apt update $ sudo apt install --no-install-recommends postfix Choisissez No configuration dans la fenêtre de configuration post-installation : On installera également la commande mail (paquet bsd-mailx) pour pouvoir tester et gérer les mails en ligne de commande directement sur le serveur : $ sudo apt install bsd-mailx Configurer Postfix Les fichiers de configuration utilisés par Postfix se situent dans /etc/postfix : Le fichier master.cf gère la configuration du démon master de Postfix. Dans la plupart des configurations de base, on n'aura pas à intervenir sur ce fichier. Le fichier main.cf contient les paramètres de contrôle des démons de Postfix. C'est celui que l'on modifiera le plus souvent. Étant donné que nous avons opté pour No configuration lors de l'installation, nous disposons uniquement d'un fichier main.cf.proto censé servir de base pour une configuration personnalisée. Le fichier /etc/postfix/main.cf.proto est une copie exacte du fichier /usr/share/postfix/main.cf.debian. En dehors de cela, le répertoire /usr/share/postfix/ fournit un fichier main.cf.dist amplement documenté qui décrit en détail le rôle de chacune des directives de configuration de Postfix. Si un paramètre n'est pas présent dans main.cf, Postfix utilisera sa valeur par défaut. Pour la plupart, ces valeurs sont définies en dur dans le code source de Postfix, tandis que certaines sont initialisées à la compilation et quelques-unes au moment du lancement du programme. Voici une configuration de mon cru pour envoyer des e-mails depuis une machine publique avec une ouverture frontale sur Internet : /etc/postfix/main.cf # /etc/postfix/main.cf # # Minimal Postfix configuration for Internet-facing servers # Disable backwards compatibility compatibility_level = 3.10 # Dedicated Postfix user mail_owner = postfix # Disable IPv6 inet_protocols = ipv4 # Outbound mail only inet_interfaces = localhost mailbox_size_limit = 0 # Host myhostname = sd-150204.dedibox.fr # Domain mydomain = dedibox.fr # Authorize local machine only mynetworks = 127.0.0.1/32 # Local aliasing alias_maps = hash:/etc/aliases # Debugging debugger_command = PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin ddd $daemon_directory/$process_name $process_id & sleep 5 Le programme postconf est très utile pour examiner les valeurs courantes et par défaut du fichier main.cf. Pour afficher la valeurs de certains paramètres de configuration, il suffit de les fournir en argument : $ sudo postconf inet_interfaces inet_interfaces = localhost L'option -d affichera la valeur par défaut des paramètres demandés : $ sudo postconf -d inet_interfaces inet_interfaces = all Servez-vous de postconf à tire-larigot N'hésitez pas à tester chacune des directives de main.cf avec postconf pour retenir les directives qui ne vont pas correspondre à la valeur définie par défaut : $ sudo postconf inet_protocols inet_protocols = ipv4 $ sudo postconf -d inet_protocols inet_protocols = all La configuration que je vous ai fournie en exemple mérite quelques remarques : Si l'IPv6 est désactivé au niveau du système, il faudra également le faire ici grâce à la directive inet_protocols. inet_interfaces = localhost limite l'utilisation de Postfix aux applications locales. myhostname est censé contenir le nom d'hôte pleinement qualifié du serveur, c'est-à-dire le résultat de la commande hostname --fqdn. mynetworks définit les adresses depuis lesquelles Postfix accepte les mails sans authentification via SMTP. alias_maps définit l'emplacement de la table de correspondance. Certaines informations ne peuvent pas être facilement représentées dans main.cf. Les tables de correspondance permettent de les stocker dans des fichiers externes. Postfix n'utilise pas directement les fichiers texte, ce serait trop lent. Au lieu de cela, les tables de correspondance de type hash (ou « tables de hachage ») servent pour construire des fichiers indexés, grâce à la bibliothèque Berkeley DB. Le programme postmap est utilisé pour construire les fichiers indexés. Pour mettre à jour les alias, on utilisera la commande newaliases. Créez la table de correspondance /etc/aliases : /etc/aliases # /etc/aliases postmaster: root root: info@microlinux.fr Indiquez votre adresse e-mail Je vous encourage fortement à utiliser votre adresse e-mail plutôt que la mienne. Ceci étant dit, la quantité de notifications que je reçois quotidiennement par e-mail me donne une vague idée de la popularité de mes articles sur l'administration des serveurs Linux. Construisez le fichier indexé : $ sudo newaliases Cette commande va créer un fichier /etc/aliases.db exploitable par Postfix : $ ls -l /etc/aliases* -rw-r--r-- 1 root root 65 Jan 31 13:17 /etc/aliases -rw-r--r-- 1 root root 12288 Jan 31 13:16 /etc/aliases.db Mise en service Le service postfix est activé dans la configuration par défaut. Il me suffit de le démarrer : $ sudo systemctl start postfix Je vérifie si Postfix tourne correctement : $ systemctl status postfix ● postfix.service - Postfix Mail Transport Agent (main/default instance) Loaded: loaded (/usr/lib/systemd/system/postfix.service; enabled; preset: enabled) Active: active (running) since Sat 2026-01-31 13:21:00 CET; 1min 11s ago Invocation: 8f8863dec0434f72abd44f3d708923d7 Docs: man:postfix(1) Process: 35329 ExecStartPre=postfix check (code=exited, status=0/SUCCESS) Process: 35487 ExecStart=postfix debian-systemd-start (code=exited, status=0/SUCCESS) Main PID: 35496 (master) Tasks: 3 (limit: 4634) Memory: 3.4M (peak: 3.9M) CPU: 1.521s CGroup: /system.slice/postfix.service ├─35496 /usr/lib/postfix/sbin/master -w ├─35497 pickup -l -t unix -u -c └─35499 qmgr -l -t unix -u Je peux également jeter un œil dans les logs de Postfix pour savoir si tout se passe comme prévu : $ sudo tail /var/log/mail.log 2026-01-31T13:24:17.238808+01:00 sd-150204 postfix/master[35820]: daemon started -- version 3.10.5, configuration /etc/postfix Envoi d'un e-mail de test J'envoie un e-mail de test vers un compte auquel j'ai accès, en l'occurrence mon adresse principale : $ mail info@microlinux.fr Subject: Test Postfix Ceci est un test. . Cc: Un point c'est tout Lorsque vous rédigez un e-mail en ligne de commande avec mail, un point . tout seul sur une ligne marque la fin du message. Je me connecte à ma messagerie et je vois que le message a bien été reçu : À partir de là, Postfix pourra être utilisé par les applications locales pour l'envoi d'e-mails. La rédaction de cette documentation demande du temps et des quantités significatives de café espresso. Vous appréciez ce blog ? Offrez un café au rédacteur en cliquant sur la tasse. Afficher l’article complet
  23. IT-Connect Publié le 29 janvier 2026 Par Florian BURNEL it-connect.fr Environ 7 minutes de lecture En s'appuyant sur PowerShell DSC 3.0, le gestionnaire de paquets WinGet est capable de déployer des applications sur Windows. Il peut également définir la configuration de la machine à l'aide d'un simple fichier YAML. Voici un exemple pratique d'utilisation de WinGet DSC. Comme son nom l'indique, WinGet DSC repose sur deux composants de Windows : WinGet, le gestionnaire de paquets permettant de gérer les applications directement en ligne de commande. Par exemple, la commande winget install <nom du paquet> permet d'installer une application. PowerShell DSC 3.0, l'outil de gestion de configuration de Microsoft, intégré à Windows et qui permet de définir un état attendu pour une machine Windows (dans le même esprit qu'Ansible). DSC signifie Desired State Configuration. L'idée est la suivante : définir la configuration attendue dans un fichier YAML et l'appliquer directement par l'intermédiaire de WinGet. La commande à utiliser sera alors winget configure <fichier YAML>. Mais comment créer ce fichier ? Que peut-on définir comme directive ? C'est ce que nous verrons dans la suite de ce tutoriel. Les fonctionnalités de WinGet DSC Le fichier de configuration exécuté par l'intermédiaire de WinGet DSC est capable d'agir sur plusieurs composantes du système d'exploitation Windows. On peut notamment citer : Paquets : installer des logiciels par l'intermédiaire des dépôts WinGet / Microsoft Store. Registre : configurer une clé ou une valeur de Registre. Environnement : gérer une variable d’environnement. Système : configurer des fonctionnalités de Windows, y compris pour pousser des configurations de logiciels. Script : exécuter des blocs de script PowerShell. Service : gérer un service Windows. Fonctionnalités Windows : activer, désactiver et configurer certaines fonctionnalités Windows. La structure du fichier WinGet DSC Un fichier de configuration WinGet doit utiliser une convention de nommage très simple : il suffit de préciser l'extension .yaml (ou .yml). Dans la suite de cet article, nous créerons le fichier suivant : winget-dsc-windows11.yaml. Dans sa documentation, Microsoft évoque aussi l'extension .winget. Ce fichier doit commencer par une ligne précisant le schéma de configuration utilisé. Soit cette ligne : # yaml-language-server: $schema=https://aka.ms/configuration-dsc-schema/0.2 Ensuite, un fichier de configuration WinGet est séparé en deux sections principales : Assertions : les conditions préalables requises pour exécuter la configuration. Par exemple, une version de Windows minimale. Ressources : les actions à effectuer en s'appuyant sur des ressources DSC. C'est dans cette section qu'il faudra déclarer la liste des logiciels à installer, les options à configurer sur Windows ou encore les scripts à exécuter. Dans la suite de cet article, nous verrons un exemple concret. Exemple d'utilisation de WinGet DSC sur Windows 11 Activer les fonctionnalités avancées de WinGet Commencez par ouvrir une console sur votre machine Windows. La première étape à effectuer qu'une seule fois consiste à activer les fonctionnalités étendues de WinGet grâce à la commande suivante : winget configure --enable Enabling extended features. Requires store access. ██████████████████████████████ 100% Cette étape préparatoire débloque les fonctionnalités de la commande winget configure que nous utiliserons par la suite pour appliquer la configuration. Construire le fichier de configuration WinGet Désormais, nous allons construire le fichier winget-dsc-windows11.yaml de façon à exécuter les actions suivantes : Installer l'application VLC Media Player via WinGet Installer l'application 7-Zip via WinGet Installer l'application Mozilla Firefox ESR via WinGet Installer l'application PowerToys via Microsoft Store Configurer la valeur de Registre EnablePeriodicBackup pour activer la sauvegarde automatique du Registre Personnaliser la configuration de l'Explorateur de fichiers Windows (afficher les extensions de fichiers, masquer les fichiers cachés) Personnaliser la configuration de la Barre des tâches de Windows (alignement à gauche, masquer le bouton des widgets, etc.) Créer le dossier C:\sources à l'aide de PowerShell (surtout pour montrer un exemple d'exécution de code PowerShell) Dans le cas où vous souhaitez installer des applications, comme c'est mon cas ici, vous devez identifier le nom des paquets. Pour cela, utilisez WinGet en ligne de commande. Prenons l'exemple du paquet PowerToys. La recherche s'effectue de cette façon : winget search <nom du logiciel> winget search powertoys Vous devez ensuite repérer la valeur de la colonne ID correspondante à l'application à installer. Ici, ce serait la première ligne avec l'ID est XP89DCGQ3K6VLD et la source est msstore. Nous allons réutiliser ces informations dans le fichier de configuration. Voici la configuration complète pour dérouler les actions évoquées ci-dessus, en commençant par une vérification de la version minimale de Windows. La configuration est facilement lisible. Sachez que dans la section resources, l'identifiant de chaque bloc (id) est une valeur personnalisable. # yaml-language-server: $schema=https://aka.ms/configuration-dsc-schema/0.2 properties: assertions: - resource: Microsoft.Windows.Developer/OsVersion directives: description: Verify min OS version requirement (Windows 11 24H2) allowPrerelease: true settings: MinVersion: '10.0.26100' resources: - resource: Microsoft.WinGet.DSC/WinGetPackage id: Package.VLC directives: description: Installation de Media Player securityContext: elevated settings: id: VideoLAN.VLC source: winget - resource: Microsoft.WinGet.DSC/WinGetPackage id: Package.7Zip directives: description: Installation de 7-Zip securityContext: elevated settings: id: 7zip.7zip source: winget - resource: Microsoft.WinGet.DSC/WinGetPackage id: Package.Firefox directives: description: Installation de Mozilla Firefox ESR securityContext: current settings: id: Mozilla.Firefox.ESR.fr source: winget - resource: Microsoft.WinGet.DSC/WinGetPackage id: Package.PowerToys directives: description: Installation de PowerToys securityContext: current settings: id: XP89DCGQ3K6VLD source: msstore - resource: PSDscResources/Registry id: Registry.RegBackup directives: description: Activation de la sauvegarde automatique du Registre securityContext: elevated settings: Key: 'HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Configuration Manager' ValueName: 'EnablePeriodicBackup' ValueData: 1 ValueType: Dword Ensure: Present Force: true - resource: Microsoft.Windows.Developer/WindowsExplorer directives: description: Modify Windows Explorer settings allowPrerelease: true settings: FileExtensions: Show HiddenFiles: Hide RestartExplorer: True - resource: Microsoft.Windows.Developer/Taskbar directives: description: Modify taskbar settings allowPrerelease: true settings: Alignment: Left SearchBoxMode: ShowIconAndLabel TaskViewButton: Show WidgetsButton: Hide - resource: PSDscResources/Script id: PowerShell.SourcesFolder directives: description: Création du dossier C:\sources securityContext: elevated allowPrerelease: true settings: # GetScript : Retourne l'état actuel (Obligatoire, sinon la ressource retourne une erreur) GetScript: | $exist = Test-Path 'C:\sources' return @{ Result = if ($exist) { "Present" } else { "Absent" } } # TestScript : Vérifie si le dossier existe déjà. # Renvoie $true si le dossier est là (ne rien faire). # Renvoie $false si le dossier manque (lancer le SetScript). TestScript: | return (Test-Path 'C:\sources') # SetScript : La commande de création (exécutée uniquement si TestScript = $false) SetScript: | New-Item -Path 'C:\sources' -ItemType Directory -Force configurationVersion: 0.2.0 Il y a des directives communes, notamment : description : utile pour documenter votre configuration et faciliter l'interprétation. securityContext: elevated : pour lancer l'action avec des privilèges administrateur, ce qui est essentiel pour certaines installations de logiciels ou configuration. allowPrerelease: true : autoriser ou non la configuration à utiliser des modules en préversion. Nécessaire actuellement pour certains modules. À la fin, la ligne configurationVersion: 0.2.0 indique la version à utiliser pour lire la configuration. Valider la configuration WinGet La commande winget configure contient plusieurs sous-commandes (voir cette page), dont celle nommée validate permettant de valider la syntaxe d'un fichier de configuration. Cette étape me semble essentielle avant d'appliquer une configuration sur une machine. Voici un exemple d'utilisation sur le fichier actuel : winget configure validate <nom du fichier de configuration> winget configure validate winget-dsc-windows11.yaml La validation n’a détecté aucun problème. Il y a des erreurs importantes signalées par cette commande. Alors que, parfois, c'est plus des avertissements, notamment pour vous forcer à respecter les bonnes pratiques. Par exemple, si vous indiquez Registry comme nom de ressource à la place de PSDscResources/Registry, il y aura un avertissement. La raison : le nom est trop vague, et plusieurs modules peuvent contenir une ressource avec ce nom, ce qui peut porter à confusion. Appliquer la configuration WinGet Quand vous serez prêts, appliquez la configuration sur la machine Windows 11 avec la commande suivante : winget configure --file winget-dsc-windows11.yaml --accept-configuration-agreements Patientez pendant l'opération. Un suivi s'affiche dans la console au fur et à mesure. Quand il y a un bouclier sur une ligne, c'est parce que l'action est effectuée avec des privilèges élevés. La configuration est effectuée en temps réel, donc vous verrez directement les changements. Conclusion WinGet DSC est une approche moderne pour le déploiement des applications sur Windows et pour appliquer une configuration. C'est une approche aussi plus standardisée et structurée qu'un script PowerShell maison, car on se rapproche plus du style d'un outil comme Ansible grâce à l'utilisation de PowerShell DSC. Pour préparer une machine rapidement, y compris un environnement de développement, WinGet DSC est efficace. Vous écrivez la configuration une fois et vous l'appliquez autant de fois que vous le souhaitez. Surtout, si vous relancez la même configuration sur la même machine plusieurs fois, tout sera vérifié et seules les étapes nécessaires (par exemple un logiciel manquant) seront appliquées. Des informations supplémentaires sont disponibles dans la documentation : WinGet DSC - Configuration - Documentation Ingénieur système et réseau, cofondateur d'IT-Connect et Microsoft MVP "Cloud and Datacenter Management". Je souhaite partager mon expérience et mes découvertes au travers de mes articles. Généraliste avec une attirance particulière pour les solutions Microsoft et le scripting. Bonne lecture. Afficher l’article complet
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.