Rust · application mobile hybride · iOS 17+

Des machines virtuelles sur votre iPhone.

Atteignez à pleine vitesse une VM qui tourne sur votre Mac, PC ou NAS — ou faites démarrer un vrai noyau Linux sur le téléphone lui-même, hors ligne.

wisq

Deux voies, une application

Distant

La VM tourne là où il y a du silicium

Deux clients écrits à la main pour un téléphone — VNC et SPICE, sans bibliothèque entre eux et le fil : des encodages compressés pour rester utilisable en 4G, et un modèle tactile qui atteint vraiment les petits boutons.

  • VNC : ZRLE, Tight avec JPEG, zlib — sur des flux persistants
  • SPICE : canaux affichage, curseur et entrées, son dans les deux sens, presse-papiers
  • Reconnexion aux changements de réseau, jamais sur un mot de passe refusé
  • Un agent hôte démarre une VM éteinte quand vous la tapez
Local

Un vrai noyau Linux, sur le téléphone

Une machine RISC-V interprétée amène Linux jusqu'à l'invite de connexion en une fraction de seconde — environ 160 millions d'instructions invitées par seconde. Sans JIT, donc rien n'entre en conflit avec la plateforme, et rien n'exige de jailbreak.

  • Cœur rv32ima, 64 Mo, UART 8250, minuteur CLINT
  • Démarre un noyau Linux 6.1 nommu standard jusqu'à l'invite
  • Entièrement hors ligne — aucun serveur, aucun réseau
  • La CI démarre ce noyau à chaque commit, comme test

Pourquoi pas simplement UTM ?

UTM est excellent, et wisq lui emprunte son modèle tactile. Mais iOS n'accorde de mémoire exécutable qu'aux applications signées pour le développement : émuler un OS de bureau sur le téléphone y est interprété, donc lent d'un ordre de grandeur. C'est un plafond de plateforme, pas de qualité de code.

CritèreUTM SEwisq
ExécutionQEMU local, interprétésur l'hôte — ou un interprète local dédié
Vitessetrès lente (pas de JIT sur iOS)limitée par le réseau · ~1 s jusqu'au shell en local
App Storezone grise, règle 4.7client réseau + interprète, tous deux propres
LicenceGPL (QEMU)pas de QEMU dedans, donc pas de copyleft à porter

L'appairage

Lancez l'agent

Il affiche un lien wisq:// par interface réseau — et un QR code si qrencode est installé. Il s'annonce aussi en Bonjour.

Scannez-le

Ouvrir le lien sur l'iPhone atterrit directement dans l'écran d'import, adresse et jeton remplis, interrogation déjà lancée.

Tapez une VM

Éteinte ? L'agent la démarre, wisq attend sa console et résout l'adresse tardivement — le port change d'un démarrage à l'autre.

Fait pour inspirer confiance

1221
tests
6
portes CI bloquantes
0
avertissement, concurrence stricte
1
vrai noyau démarré par exécution CI