Faire couler le vin sans tête

17

Je veux exécuter Wine sans tête et éviter le message d'erreur:

Assurez-vous que votre serveur X fonctionne et que $ DISPLAY est correctement défini.

Existe-t-il un moyen ou dois-je le router / transférer vers une sortie? Peut-il simplement s'exécuter à partir d'une ligne de commande?

FabioCosta
la source
Qu'essayez-vous exactement de courir dans le vin? La plupart des programmes Windows nécessitent une interface graphique pour être présents.
Michael Hampton
C'est une longue histoire, mais en gros j'ai un très ancien exe que je dois utiliser pour des raisons héritées et ne produira aucune sortie GUI. Un exemple de commande qui émet la même erreur serait winetricks vb6run
FabioCosta
1
Eh bien, oui, cela démarre un programme d'installation basé sur une interface graphique, il voudra donc un affichage.
Michael Hampton du
Je ne l' ai pas réalisé que ce serait vraiment besoin l'IUG sur cet exemple, est une autre question , mais vous m'a montré une erreur de mine.Anyhow je suppose que je vais finir par utiliser Xvfb et corriger les erreurs de police
FabioCosta

Réponses:

13

Je ne sais pas une façon de diriger le vin totalement sans tête mais je peux vous indiquer xvfb. Il peut créer un affichage virtuel vers lequel le serveur X peut rediriger sa sortie. Pas besoin d'avoir un écran physique connecté. Nous l'utilisons pour exécuter des tests de sélénium dans les navigateurs d'un cluster Jenkins sans tête.

Est-ce que cela répond aux exigences ou êtes-vous déterminé à faire du vin absolument sans tête?

Erathiel
la source
J'essaie avec Xvfb mais c'est un peu étrange d'utiliser "Xvfb: 1 & '" puis "export DISPLAY =: 1", puis en exécutant mon vin, je génère une erreur de police et je bloque l'exécution. J'essaie de corriger l'erreur de police en suivant ce blog.martin-lyness.com/archives/… tout en recherchant d'autres alternatives
FabioCosta
15

Vous pouvez configurer votre Wine pour qu'il fonctionne sans tête en installant X framebuffer virtuel . Par exemple:

sudo apt-get install Xvfb
Xvfb :0 -screen 0 1024x768x16 &

Installez le vin:

# On 64-bit also run: sudo dpkg --add-architecture i386
sudo add-apt-repository -y ppa:ubuntu-wine
sudo apt-get update
sudo apt-get install wine

Remarque: Pour un exemple d'installation détaillé, consultez le provision.shscript.

Installez les polices si nécessaire:

winetricks allfonts

Exécutez ensuite vos applications en tant que:

DISPLAY=:0.0 wine my_app.exe

ou vous pouvez l'exporter (donc pas besoin du préfixe ci-dessus lors de l'exécution):

export DISPLAY=:0.0 # Select screen 0.

DISPLAYest votre demande de service d'affichage / d'entrée local (ou:) export DISPLAY=[user's machine]:0.


Vous pouvez également configurer le transfert X11. Ensuite, vous n'avez pas besoin d'utiliser DISPLAY.

Fondamentalement mis X11Forwarding yesen /etc/ssh/sshd_configsur le serveur sans tête et ForwardX11 yesdans /etc/sshd/ssh_configla machine que vous vous connectez depuis.

Ensuite, vous pouvez exécuter des applications GUI sur votre serveur sans tête et en même temps Wine pourra se connecter à votre serveur X11 local, vous pourrez donc exécuter vos exécutables DOS basés sur la console.

kenorb
la source