Hosts déclarés dans ~/.ssh/config, avec user et hostname
--docker
Containers actifs et networks Docker, via la CLI docker
Combiner :
sysinfo -l --vpn # localisation + détection VPN
sysinfo --local-ip -4 # IP locale et IPv4 réseau
sysinfo -a -t # tout, sous forme de tableau
sysinfo --ssh --docker # hosts SSH et containers
04 — Modes d'affichage
En lignes, ou en tableau
Par défaut, une ligne par info. -t affiche les mêmes données en tableau à deux
colonnes, ajusté à la largeur du terminal. -c ajoute la couleur, -i
ouvre le mode interactif.
(défaut)
Une ligne par info
-t, --table
Tableau à deux colonnes
-c, --color
Couleurs ANSI
-i, --interactive
Onglets navigables, voir plus bas
-h, --help
Flags et exemples
sysinfo -l -t05 — Mode interactif
Cinq onglets navigables
$sysinfo -i
Construit avec curses. Chaque onglet met son résultat en cache mémoire ;
r force un nouveau fetch.
sysinfo -i
Clavier
Touche
Action
← → · Tab
Changer d'onglet
r
Rafraîchir l'onglet courant (invalide son cache)
q · Échap
Quitter
06 — Sécurité
Checksum et permissions
Le script est publié avec son SHA256 : install.sh et --update le
vérifient, et il reste vérifiable à la main. Le script n'appelle pas sudo.
sha256sum -c sysinfo.py.sha256 # shasum -a 256 sur macOS
Permissions
Fonctionnalité
Sans sudo
Avec sudo
Système · réseau · SSH
Sortie complète
Aucune différence
--ports
Process des autres utilisateurs affichés N/A
Tous les process visibles
--docker
Message d'erreur si hors du groupe docker
Fonctionne
--update
Suggère sudo si installé dans un dossier système
Fonctionne
07 — Mise à jour
Ce que fait --update
$sysinfo --update ✓ Checksum vérifié ✓ sysinfo mis à jour
01
Téléchargement
02
SHA256
03
Comparaison
04
os.replace()
01
Le script distant est téléchargé dans un fichier temporaire.
02
Son SHA256 est vérifié face au checksum publié. S'ils diffèrent, rien n'est écrit.
03
Le checksum distant est comparé à celui du fichier installé. S'ils correspondent, le script est déjà à jour.
04
os.replace() échange le fichier de façon atomique : une mise à jour coupée ne laisse pas de script à moitié écrit.
Chemin d'installation :
résolu via shutil.which() quand le script est lancé via le $PATH,
donc --update fonctionne depuis n'importe quel dossier d'installation.
08 — Limites
Appel API et uptime
--vpn
Repose sur un appel API externe : un rate limit peut être atteint.