Installer un .msi sur un windows mobile depuis linux

Saviez vous que pour utiliser un pda sous windows mobile, il vous fallait un ordinateur sous windows? Je m’en doutais pour ce qui est de la synchronisation et tout ce qui va avec, mais j’étais loin de penser que pour installer un simple programme, il fallait avoir un ordinateur équipé de windows! La déclinaison mobile étant censée être un os à part entière…

Donc, je veux installer un soft sous un htc équipé d’un windows mobile 6, ce soft requiert la présence du framework .net, jusque là, pas de souci, une petite recherche sur internet donne plusieurs résultats dont des fichiers .cab dans la majorité des forums traitant de la question. Étant donné que je ne connais pas les dit forums, je préfère aller le télécharger à la source, donc, chez microsoft (au passage, c’est pas très simple de s’y retrouver dans leur site); bref, je télécharge la version 3.5 pour windows mobile 6, la transfère sur le pda puis le lance… Erreur: aucune application associée, le programme d’installation est au format .msi

La démarche « normale » aurait été de lancer le .msi depuis windows avec le pda connecté au pc, n’étant pas sous windows, il faut trouver un autre moyen, et c’est là que wine arrive à la rescousse.

Une fois wine installé:

msiexec /i NetCFSetupv35.msi

Il suffira de répondre au question et d’accepter la licence, et on retrouvera le fichier .cab qui va bien dans:

~/.wine/drive_c/Program Files/Microsoft.NET/SDK/CompactFramework/v3.5/WindowsCE/

Pour l’htc diamond par exemple, c’est « NETCFv35.wm.armv4i.cab ».

Une copie sur l’appareil, et on peut le lancer, ce qui se solde par son installation.