Apparence
Uubu.fr

Les systèmes Linux, l’open source, les réseaux, l’interopérabilité, etc.
« Il vaut mieux viser la perfection et la manquer que viser l’imperfection et l’atteindre. » (Bertrand Arthur William RUSSEL)
16 mai 2017

wine Linux Windows           Virtualisation


Wine - présentation

Wine - présentation

Wine est une implémentation des librairies Windows, agissant comme un pont vers les librairies linux

Fonctionnalités de Wine

- Support pour les applications win16, win32 et win64
- utilisation de fichiers dll
- Affichage graphique X11
- Support de DirectX
- Support pour les pilotes son tel que OSS et ALSA
- Support pour des périphériques d’entrée tels que les tablettes graphiques
- Pilote PostScript pour l’impressions
- support modem série
- Winsock TCP/IP networking
- Support des interfaces scsi ASPI pour les scanner, graveurs cd, etc.
- Support unicode et support de langues avancé
- Débugger intégré et avancé

Compiler Wine


wget http://downloads.sourceforge.net/project/wine/Source/wine-1.7.0.tar.bz2
tar -xjf wine-1.7.0.tar.bz2
cd wine-1.7.0
./configure
make depend
make
make install

Exécuter Wine

   Les applications sont installées sous Wine de la même manière qu'elles le sont sous Windows : en exécutant l’installeur. Pour désinstaller un programme, lancer le programme uninstaller (généralement dans programs/uninstaller/) : wine uninstaller.

  Certains programmes associent une applet dans le panneau de contrôle : wine control

Variables d’environnement

WINEDEBUG=[channels] permet d’activer des cannaux de debug. 4 classes peuvent être définies, trace, fixme, warn, err, +all, -‹class›. (ex : WINEDEBUG=warn+heap wine program_name)
WINEDLLOVERRIDES=[DLL Overrides] Permet d’utiliser les DLL natives au lieu de celles intégrées (ex : WINEDLLOVERRIDES="comdlg32=b,n ;shell32=b ;comctl32=n ;oleaut32=" wine program_name)
WINEARCH Spécifie l’architecture Windows à supporter
AUDIODEV défaut : /dev/dsp
MIXERDEV défaut : /dev/mixer
MIDIDEV défaut : /dev/sequencer

Options de wineserver

-d‹n› Définis le niveau de debug à sortir dans le terminal
-k[n] Kill le wineserver courrant avec le signal spécifié
-p[n] rend winserver persistant, optionnellement pour n secondes
-w wineserver attend jusqu’à ce que l’instance winserver active se termine

Définir les variables d’environnement Windows/DOS

export MYENVIRONMENTVAR=myenvironmentvarsetting

   Pour certaines variables d’environnement comme PATH, SYSTEM ou TEMP, pour ne pas altérer l’environnement linux, il est nécessaire de les déclarer dans le registre avec regedit ( HKEY_CURRENT_USER/Environment)

Programmes en mode texte (CUI)

   Il y’a 3 manières différentes de lancer un tel programme:

bare streams Pas de support supplémentaire de wine qui map la console Windows à une console unix
wineconsole with user backend Utilise wineconsole
wineconsole with curse backend Utilise wineconsole

   Quand wineconsole est utilisé, de nombreuses options de configuration sont disponibles. Wine les stock sur une base par application dans le registre. Seul le backend user permet d’éditer ces options. Les options de configurations de wineconsole permettent de choisir entre Default (paramètres partagés par toutes les applications) ou properties (édition par application).

Configurer Wine avec winecfg

   Wine stock toute sa configuration dans le registre.

Applications Wine a la capacité de mimer différentes version de Windows. Pour chaque application, Wine permet de spécifier quelle version de windows simuler.
Bibliothèques Certaines applications nécessitent des librairies spécifiques. Wine reproduit les librairies système Windows avec des versions complètement conçues de manière à fonctionner de la même manière, mais sans nécessiter de licence Microsoft. Il est possible de spécifier une DLL Native de remplacement dans le cas où les DLL intégrées ne fonctionnent pas correctement.
Affichage 5 paramètres de base permettent de déterminer le mode d’affichage des applications
Lecteurs Permet de gérer les lecteurs Windows. Tous les lecteurs résident dans /.wine/dosdevices Chaque lecteur est un lien vers l’emplacement où il réside.
Audio Wine Peut fonctionner avec différents sous-systèmes audio, définissable ici.
intégration avec le bureau Wine peut charger des thèmes Windows

Utiliser le registre et regedit

system.reg contient HKLM
user.reg contient HKCU
userdef.reg contien HKUSERS\.Default

   Ces fichiers sont créés la toute première fois que wine est lancé

Autres configuration

   La configuration des ports série et parallèle est très similaire à la configuration des lecteurs, un lien dans .wine/dosdevices (ex : ln -s /dev/ttyS0 com1 et ln -s /dev/lp0 lpt1)

Partages réseaux Les partages réseaux peuvent être mappés dans le répertoire unc (ex : ln -s /mnt/smb/myserver/some unc/myserver/some )
police de caractères Les fonts .ttf sont placées dans c :\windows\fonts
Imprimantes Wine peut interagir avec CUPS pour trouver les imprimantes disponibles
Scanner Dans Windows, les scanner utilisent le TWAIN API pour accéder au hardware. la version intégrée de Wine forwards simplement les requêtes aux librairies Linux SANE
Base de données ODBC le système ODBC dans Wine, est conçu pour hook dans le système unix. Au lieu de s’assurer que le code Winodws fonctionne sous wine, il utilise un fournisseur ODBC Unix, tel que UnixODBC.