Tout d'abord, pour pouvoir exécuter un programme Windows, nous allons avoir besoin de Wine (Wine Is Not an Emulator)

.
Ce programme se trouve sur les dépôts de Debian et d'Ubuntu, et sans doute sur beaucoup d'autres aussi.
Si vous n'avez pas sudo ou kdesu :
- se logger en root :
Code : Console
- entrer son password super-utilisateur :
Code : Console
- Installer Wine :
Code : Console
Pour |K|X|Ed|ubuntu
- On utilise sudo ou kdesu pour faire directement l'installation :
Code : Console | sudo apt-get install wine |
Code : Console | kdesu apt-get install wine |
- Entrer son password superutilisateur :
Code : Console
Pour les autres distributions : les .rpm et les sources sont téléchargeables ici :
http://winehq.com/site/download/.
Il existe aussi de nombreux paquets pour Wine (xwine et toutes les libwine) qui vous seront peut-être utiles si vous utilisez des jeux par exemple, mais je ne connais pas bien leur utilisation...
Vous pouvez maintenant exécuter certains programmes Windows

.
Pour vous montrer que Wine fonctionne (comme ça, vous ne vous découragerez pas), un petit exemple.
(Passez cette partie si vous voulez installer Flash directement.)
Vous avez déjà vu ça quelque part ? Ben oui, c'est issu du cours de M@teo21 sur le CSS.
Alors pour simplifier les choses, on va faire en sorte que les .exe se lancent avec Wine...
Voilà pour KDE, ça ne doit pas être fort différent avec GNOME ou XFCE :
- clic droit > Propriétés ;
- cliquez sur la petite clé anglaise ;
- vous devez ajouter Wine pour qu'il s'exécute automatiquement.
Vous pouvez cocher les deux cases, cela vous aidera peut-être pour trouver une erreur par la suite !
- Vous pouvez suivre l'installation...
- Lors du choix d'emplacement, vous voyez (avec étonnement ?
) "c:\Program Files\LaBoiteACouleurs" , les backslashs à la Windows !
C'est en réalité un disque virtuel qui se trouve à l'emplacement "/home/utilisateur/.wine/drive_c/" (soit utilisateur votre nom d'utilisateur
). ".wine" est un fichier caché parmi les nombreux qui se trouvent dans le dossier utilisateur...
- Pour accéder au programme, vous devez donc aller dans le dossier spécifique :
"/home/utilisateur/.wine/drive_c/Program Files/LaBoiteACouleurs".
- Vous cliquez sur "LaBoiteACouleurs.exe" (si ça ne marche pas : clic droit > Ouvrir avec Wine).
Et là... (
taintain-hain...) Magie

! Le programme s'exécute comme s'il était sur Windows

:
Chouette, n'est-ce pas ?
On s'est bien amusé à tripatouiller la boîte à couleurs ?
Maintenant, on s'attaque à un vrai gros programme (propriétaire

) !
Alors, je le répète encore une fois, vous devez avoir préalablement installé Flash 8 sur Windows...
On monte sa partition (pas en clé de fa, en NTFS
).
Voyons d'abord, si ce n'est déjà fait, comment monter votre partition Windows sur Linux

.
Je vous conseille d'installer vim, c'est très utile.
J'espère que vous savez maintenant comment installer un programme

.
Nous allons devoir modifier le fichier "/etc/fstab/".
Malheureusement, je n'ai pas de grande connaissances à ce sujet, je vais donc me contenter d'écrire ce que je sais, pour ne pas ajouter de bêtises

.
Si vous êtes sur XP, la partition est au format NTFS, voici comment faire.
- Vous devez d'abord créer le dossier dans lequel vous voulez que se trouve votre partition :
Code : Console
- Vous modifiez le fichier "/etc/fstab" en root :
Code : Console
- Vim est un éditeur de texte en mode console, vous devez appuyer sur la touche "insert" pour pouvoir écrire du texte :
Voici la ligne que j'ai entrée :
"/dev/hda2____/mnt/windowsXP____ntfs____ro,user,auto,gid=100,uid=1000,umask=002____0____0" :
- /dev/hda2 : URL de la partition : pour la trouver, utilisez GParted ou QTParted.
- /mnt/windowsXP : dossier dans lequel vous voulez que se trouve votre partition (créé auparavant).
- ntfs : système de fichiers de la partition à monter.
- ro,user,auto,gid=100,uid=1000,umask=002 : série d'options, elles se résument à ce qu'on ne peut que lire dedans, que la partition se monte automatiquement au démarrage et que l'utilisateur y ait aussi accès.
- 0 : cela indique qu'il ne peut pas sauvegarder (ne mettre 1 que pour les types ext).
- 0 : cela indique qu'il ne doit pas être testé.
- Si vous voulez la copier, après être en mode insert, vous devez être sur une nouvelle ligne et faire Maj + Insert pour copier dans la console (n'oubliez pas de changer les "____" par une tabulation
).
- Il ne vous reste plus qu'à appuyer sur "Esc" pour retourner en mode commande et entrer :
Code : Console | :w pour enregistrer, :q pour quitter, et :wq ou :x pour faire les deux |
- Pour monter la partition, vous devez redémarrer ou entrer dans la console (en root) :
Code : Console
Enfin Flash 8 !
Bon, si vous avez trimé pour monter votre partition, sachez que maintenant ce sera plus rapide.
On va encore installer quelque chose

: recode, pour ne pas avoir de problèmes de caractères :
Code : Console
(Vous l'auriez deviné, j'espère.

)
On n'a plus qu'a copier des fichiers

.
Vous devez simplement les glisser de la source vers la destination.
| Source ( /mnt/windowsXP/... ) | Destination ( ~/.wine/drive_c/... ) |
|---|
| ".../Program Files/Macromedia/Flash 8/" |
".../Program Files/Macromedia/Flash 8/" |
| ".../Documents and Settings/All Users/Application Data/Macromedia/" |
".../windows/profiles/All Users/Application Data/Macromedia/" |
| ".../WINDOWS/system32/Macromed/" |
".../windows/system32/Macromed/" |
"~" est le répertoire de l'utilisateur (/home/user)
Je pense qu'on a fait le tour.
Maintenant, si tout c'est bien passé, il ne vous reste plus qu'à lancer le logiciel, l'heure de vérité approche...
TAINTAINTAAIIIN-HAIN (re-)

C'est-y pas beau ?

||-----------------||

Mheuuu ? Pourquoi qu'il a mis Dreamweaver ?
- Héhé...
Voilà, il vous suffit de copier le dossier Dreamweaver 8, et c'est reparti !
Cela fonctionne sans doute avec les autres programmes de la suite studio 8 (Fireworks et cie )...
De plus, le player se trouve à cette adresse-ci : "c:\Program Files\Macromedia\Flash 8\Players\SAFlashPlayer.exe", il permet donc de visualiser les .swf version 8 ou 9 sans aucun problème.
Autres
Raccourcis
Pour plus de convivialité, vous pouvez faire des raccourcis.
Voici la manipulation pour KDE :
Clic droit > Créer un nouveau... > lien vers une application.
Mettez le nom désiré, "Flash 8" par exemple.
Puis dans l'onglet Application :
wine "c:\Program Files\Macromedia\Flash 8\Flash.exe" pour Flash,
et
wine "c:\Program Files\Macromedia\Dreamweaver 8\Dreamweaver.exe". On verra par la suite comment simplifier la chose avec un script.
Icônes
Pour l'icône, il vous suffit de cliquer dessus dans les propriétés et choisir le chemin dans Parcourir...
Malheureusement, je n'ai pas trouvé les vraies icônes (sur Windows, elle se trouve dans un dossier assez spécial : %SystemRoot%\Installer\{5FD788ED-1A37-4496-9BDD-463F493B27FA}\DWARPPRODUCTICON.exe
après recherche, cela se trouverait dans le registre (petite mémoire se trouvant dans le processeur) mais je n'en connais pas les détails).
Mais heureusement,
Thunderseb, validateur (que je salue bien bas, au passage), a les vraies icônes.

Voici le répertoire où elles se trouvent (les *.ico pour les petites icônes et les *.png pour les autres) :
http://nayi.free.fr/transit/icons/
Petits soucis
Il reste tout de même un problème, ça ne marche parfois pas très bien d'ouvrir les *.fla créés sous Windows.
Si quelqu'un a trouvé la parade, tenez-moi au courant.
Et un autre petit problème : c'est l'assignation automatique pour l'ouverture des fichiers *.swf et *.fla (et éventuellement des fichiers html, php, css...).
Flash, Flash player et Dreamweaver ne comprennent que les adresses formées comme sous Windows : la racine du systeme Linux étant "z:\".
Exemple. Si vous entrez dans une console :
Code : Console | wine "c:\Program Files\Macromedia\Flash 8\Flash.exe" "/home/utilsateur/exemple.fla" |
Flash se lancera mais n'ouvrira pas le document, tandis que si vous entrez :
Code : Console | wine "c:\Program Files\Macromedia\Flash 8\Flash.exe" "z:\home\utilsateur\exemple.fla" |
cela se lancera... mais avec l'assignation automatique, je pense qu'il est impossible de "changer" l'adresse du fichier sur lequel on a cliqué.
Il faudrait faire pour cela un programme intermédiaire qui la modifie !
je n'ai pour l'instant pas le temps de m'attaquer à ça, mais pourquoi pas une autre fois ?
J'ai trouvé le temps, voir la suite du tuto.
Comme dit ci-dessus, je vous ai fait un petit script pour modifier l'adresse.
Code : Bash 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 | #!/bin/sh
adresse=$2 # on assigne la valeur du paramètre dans la varible adresse
adresse=$(echo $adresse | sed 's/\//z:\\/1') # on modifie adresse pour que le premier "/" soit remplacé par "z:\"
adresse=$(echo $adresse | sed 's/\//\\/g') # on modifie adresse pour que tous les "/" soient changés en "\"
programme1=flash # on met des noms aux
programme2=flash-player # différents programmes pour
programme3=dreamweaver # pouvoir les changer facilement
case $1 in # si l'argument 1 vaut un programme, on l'exécute
$programme1)
wine "c:\Program Files\Macromedia\Flash 8\Flash.exe" "$adresse";;
$programme2)
wine "c:\Program Files\Macromedia\Flash 8\Players\SAFlashPlayer.exe" "$adresse";;
$programme3)
wine "c:\Program Files\Macromedia\Drealweaver 8\Dreamweaver.exe" "$adresse";;
-h) # si l'argument 1 vaut -h, on affiche l'aide
echo -e "\n******************************************
* Vous etes dans l'aide de $0 *
******************************************"
echo -e "\n Voici la syntaxe a utiliser : \n $0 programme adresse \n\n- programme : \n * $programme1, $programme2 ou $programme3 selon le programme desire.\n\n-adresse : vous pouvez entrez l'adresse sous la forme linux (/home) \nou sous la forme windows (z:\home).\n\n*************************************************************\n Script realise par Simonkey\n (effacez-le, c'est juste pour l'effet :p)"
;;
*) # si l'argument 1 est différent, on affiche un message d'erreur
echo -e "\nDesole, votre premier argument ($1) n'est pas valide.\nEntrez l'option -h pour consulrer l'aide.\n";;
esac
exit 0 # on quitte le script sans erreur (0)
|
J'ai mis des commentaires mais je vais vous expliquer tout ça plus en détail :
- #!/bin/sh : cela veut juste dire que le script est en shell.
- adresse=$(echo $adresse | sed 's/\//z:\\/1') : en français, ça fait : je mets la valeur de la modification du texte de la variable adresse par le remplacement de la première occurrence de "/" par "z:\" .
sed 's/\//z:\\/1' c'est la commande, le 1 signifie que c'est la première apparition, le texte à remplacer entre les premiers slashs et ce par quoi il est remplacé entre les deux derniers. J'ai rajouté des backslashs (\) pour "échapper" "/" et "\" car ce sont des caractères spéciaux.
echo $adresse | veut juste dire qu'on applique ceci sur la valeur de adresse.
- sed 's/\//\\/g' : pareil, sauf que cette fois, c'est pour toutes les occurrences (g = global) et qu'on ne modifie qu'en "\".
- case $1 in : "case ... in" permet de vérifier la valeur d'une variable, comme le switch en C. $1 est une variable spéciale : le premier argument de la commande.
Les ;; sont les équivalents de break, c'est-à-dire, quitter le case.
Le esac est un case à l'envers et permet de dire que le case est terminé.
- Les variables $0 , $1 et $2 sont des variables spéciales, $0 : la commande et les autres, les arguments, dans leur ordre.
Je crois qu'on a fait le tour : pour exécuter le script, copiez le texte dans un fichier texte nommé (par exemple) lanceur.sh.
Entrez :
Code : Console
Ou rendez-le exécutable :
Code : Console
Puis exécutez-le :
Code : Console
Vous devez être dans le répertoire courant de lanceur.sh, sinon indiquez l'adresse entière (/home/.../script.sh).
Ensuite, indiquez-le par défaut pour les extensions *.swf , *.fla et éventuellement *.php, *.css, *.html, *.tpl , etc...
Avec comme argument, évidemment, un des programmes que vaut une des variables
$programme ...
Exemple :
/home/user/mes-scripts/lanceur.sh flash.