Wiki » History » Revision 27
Revision 26 (Gabor Murray, 11/26/2025 10:33 PM) → Revision 27/35 (Fluidone Morinmoto, 11/29/2025 06:28 PM)
h1. Wine-Wiki
1. Creare un @WINEPREFIX@ nella home
<pre>
WINEPREFIX="$HOME/.wine-dir" WINEARCH=win32 wine wineboot
</pre>
2. Scaricare @winetricks@
<pre>
wget https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks
</pre>
3. Renderlo eseguibile
<pre>
chmod +x winetricks
</pre>
4. Installare @corefonts@ e le librerie @dotnet@ (4.6.2 in questo caso) specificando il sistema operativo Windows XP. NB: per problemi con @dotnet461@ vedi sotto
<pre>
WINEPREFIX="$HOME/.wine-dir" ./winetricks corefonts dotnet462 ddr=gdi winxp
</pre>
5. Esecuzione di un Programma .exe
<pre>
WINEPREFIX="$HOME/.wine-dir" wine programma.exe
</pre>
h3. dotnet461 crashing GUI bug
Nel caso si presenti un problema con l'installazione di @dotnet461@ lanciare @winetricks@ con l'opzione -q per aggirare il crash della GUI
<pre>
WINEPREFIX="$HOME/.wine-dir" ./winetricks -q dotnet462
</pre>
h3. Montare un'immagine ISO
Montare inizialmente l'immagine in linux, ad esempio con furius iso mount
Lanciare wincfg
<pre>
WINEPREFIX="$HOME/.wine-dir" winecfg
</pre>
Nella finestra che comparirà:
* selezionare la tab "Unità" (Drivers in inglese);
* aggiungere o modificare una unità già esistente;
* scegliere il percorso in cui è stata montata la ISO;
* aprire la sezione "Avanzate...";
* scegliere il tipo: CD-ROM;
h3. Alcuni modi per aggirare gli errori
Se avviando un gioco (ad esempio The Fifth Element) compare il seguente messaggio:
<pre>
The driver of a PowerVR 3D card has been detected, but the hardware could not be initialized.
Please remove the file SGL.DLL from your WINDOWS and WINDOWS/SYSTEM directory and try again.
</pre>
lanciare il programma con l'opzione -d3d
<pre>
WINEPREFIX="$HOME/.wine-dir" wine programma.exe -d3d
</pre>
h3. Verifica installati
<pre>
$ WINEPREFIX="$HOME/.wine-dir/" WINEARCH=win32 ./winetricks list-installed
</pre>
h3. Aumentare il font
Avviare winecfg:
<pre>
WINEPREFIX="$HOME/.wine-dir" winecfg
</pre>
selezionare Grafica -> Screen Resolution e modificare il valore come desiderato
h3. Un ambiente isolato per wine a 32 bit
Puoi isolare l'Aurora Toolset in un ambiente separato, in cui libgd3:i386 sia installata senza interferire con il sistema principale.
Installa schroot
<pre>
$ sudo apt install schroot debootstrap
</pre>
Configura un ambiente chroot a 32-bit:
<pre>
$ sudo debootstrap --arch=i386 bullseye /srv/chroot/nwn32 http://deb.debian.org/debian
# oppure
$ sudo debootstrap --arch=i386 focal /srv/chroot/nwn32 http://archive.ubuntu.com/ubuntu/
</pre>
Modifica il file /etc/schroot/schroot.conf e aggiungi:
<pre>
[nwn32]
description=Debian 32-bit environment for Neverwinter Nights Toolset
directory=/srv/chroot/nwn32
root-users=tuo-utente
type=directory
users=tuo-utente
</pre>
Avvia schroot come utente root e installa sudo:
<pre>
$ sudo schroot -c nwn32 -u root
(nwn32)$ apt update
(nwn32)$ apt install sudo
(nwn32)$ usermod -aG sudo tuo-utente
(nwn32)$ exit
</pre>
Adesso entra nell'ambiente nwn32 e installa wine32 ed eventuali pacchetti necessari:
<pre>
$ schroot -c nwn32
(nwn32)$ sudo dpkg --add-architecture i386
(nwn32)$ sudo apt install wget gnupg2 libgd3:i386 libwine:i386 wine32 mesa-utils
</pre>
Librerie necessarie:
Core OpenGL / Mesa
<pre>
(nwn32)$ sudo apt install libgl1-mesa-glx:i386 libgl1-mesa-dri:i386 libglu1-mesa:i386 libglapi-mesa:i386 libxatracker2:i386 libdrm2:i386
</pre>
X11 e estensioni
<pre>
(nwn32)$ sudo apt install libx11-6:i386 libxext6:i386 libxrandr2:i386 libxi6:i386 libxrender1:i386 libxfixes3:i386 libxdamage1:i386 libxcomposite1:i386 libxcursor1:i386 libxinerama1:i386 libxss1:i386 libxtst6:i386
</pre>
Font / Rendering
<pre>
(nwn32)$ sudo apt install libfreetype6:i386 libfontconfig1:i386 libpng16-16:i386 libsm6:i386 libice6:i386
</pre>
Audio / OpenAL
<pre>
(nwn32)$ sudo apt install libopenal1:i386 libasound2:i386 libasound2-plugins:i386
</pre>
Extra per Wine / compatibilità
<pre>
(nwn32)$ sudo apt install libc6:i386 libc6-dev-i386 libgcc-s1:i386 libstdc++6:i386 libtinfo6:i386 libncurses6:i386
</pre>
Driver video 32-bit (se NVIDIA/AMD proprietari)
<pre>
(nwn32)$ sudo apt install libnvidia-glx:i386 libnvidia-glvkspirv:i386
</pre>
Esportare il display per avviare finestre dentro l'ambiente:
<pre>
(nwn32)$ export DISPLAY=:0
</pre>
h4. winetricks extra sources
Aggiungere a /etc/apt/sources.list:
<pre>
deb http://deb.debian.org/debian bullseye main contrib non-free
deb http://deb.debian.org/debian bullseye-updates main contrib non-free
deb http://security.debian.org/debian-security bullseye-security main contrib non-free
</pre>
poi:
<pre>
(nwn32)$ sudo apt update
(nwn32)$ sudo apt install winetricks
</pre>
h4. Librerie NVidia in posizioni non standard
Dentro schroot installa le librerie corrispondenti alla versione del driver host:
<pre>
(nwn32)$ sudo dpgk --add-architecture i386
(nwn32)$ sudo apt update
(nwn32)$ sudo apt install nvidia-driver-libs:i386
</pre>
Verifica dove si trovano le tue librerie @.so@ nvidia e adatta i link simbolici di conseguenza. Per me su Lubuntu 24.04 sono in /usr/lib/i386-linux-gnu/nvidia/current/, ma in debian dentro il schroot il sistema se le aspetta in /usr/lib32/nvidia
<pre>
(nwn32)$ sudo mkdir -p /usr/lib32
(nwn32)$ cd /usr/lib32
(nwn32)$ sudo mkdir -p nvidia
(nwn32)$ sudo ln -sf /usr/lib/i386-linux-gnu/nvidia/current/libGLX_nvidia.so.0 nvidia/libGLX.so.0
(nwn32)$ sudo ln -sf /usr/lib/i386-linux-gnu/nvidia/current/libEGL_nvidia.so.0 nvidia/libEGL.so.1
(nwn32)$ sudo ln -sf /usr/lib/i386-linux-gnu/nvidia/current/libGLESv2_nvidia.so.2 nvidia/libGLESv2.so.2
(nwn32)$ sudo ln -sf /usr/lib/i386-linux-gnu/nvidia/current/libGLESv1_CM_nvidia.so.1 nvidia/libGLESv1_CM.so.1
(nwn32)$ sudo ln -sf /usr/lib/i386-linux-gnu/nvidia/current/libcuda.so.1 nvidia/libcuda.so.1
</pre>
Poi impostare LD_LIBRARY_PATH:
<pre>
(nwn32)$ export LD_LIBRARY_PATH=/usr/lib32/nvidia:$LD_LIBRARY_PATH
</pre>
h4. Montare un percorso esterno
Modifica il file @/etc/schroot/default/fstab@ :
<pre>
/media/tuo-utente/VOLUME_ESTERNO/Giochi/Neverwinter/Neverwinter_Enhanced_Installed /srv/chroot/nwn32/mnt/nwn_game none rw,bind 0 0
</pre>
Crea il punto di mount nel sistema host:
<pre>
$ sudo mkdir -p /srv/chroot/nwn32/mnt/nwn_game
</pre>
h3. Installare i font
<pre>
$ sudo apt install ttf-mscorefonts-installer
$ cp /usr/share/fonts/truetype/msttcorefonts/* /home/user/.wine_prefix_dir/drive_c/windows/Fonts
</pre>
h3. Problemi di freeze dell'applicazione
Se un'applicazione (RimWorld) si freeza passando da una finestra all'altra avviarla in emulazione desktop:
<pre>
$ WINEPREFIX="$HOME/.wine" wine winecfg
</pre>
Selezionare *Graphics* -> Spunta Emulate a virtual desktop e seleziona la risoluzione dello schermo es.: 1900x1080 .
L'applicazione viene eseguita in una finestra, ma se la si rende grande come tutto lo schermo, sembrerà che sia fullscreen.
h3. Montare CD al volo
Supponiamo di voler montare il disco inserito nel CD ROM, nella cartella @/dev/cdrom@.
Creare la cartella nell'ambiente:
<pre>
(nwn32)$ sudo mkdir /dev/cdrom
</pre>
Lista i punti di mount per
<pre>
(nwn32)$ mount | grep /dev/sr0
</pre>
e smontare eventuali mount occupati (quando si inserisce il CD magari il sistema lo monta già in una cartella)
<pre>
(nwn32)$ sudo umount /dev/sr0
</pre>
oppure con smontaggio lazy
<pre>
(nwn32)$ sudo umount -l /dev/sr0
</pre>
Montare il cd nella cartella creata all'interno dell'ambiente:
<pre>
(nwn32)$ sudo mount -t iso9660 /dev/cdrom /mnt/cdrom
</pre>
Entrare nel CD ed avviare il processo di installazione:
<pre>
(nwn32)$ cd /mnt/cdrom/
(nwn32)$ wine SETUP.EXE
</pre>
Quando viene richiesto di cambiare CD, esci dalla cartella /dev/cdrom altrimenti questa risulterà occupata e non sarà possibile smontarla.
Smontare il cd come descritto sopra.