Wiki » History » Revision 31
Revision 30 (Fluidone Morinmoto, 11/29/2025 06:37 PM) → Revision 31/35 (Fluidone Morinmoto, 11/29/2025 06:42 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> Nel sistema host verifica dove si trovano le librerie: <pre> $ cd /usr/lib $ find . -name "libGLX_nvidia.so.0" </pre> Individua nell'output le librerie i386 e poi monta la directory delle librerie dal sistema host nel sistema schroot: <pre> $ sudo mount --bind /usr/lib/i386-linux-gnu/ /srv/chroot/nwn32/usr/lib/i386-linux-gnu/nvidia/current/ </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 (nwn32)$ export WINEPREFIX="$HOME/.wine32/" WINEARCH=win32 wine nwtoolset.exe </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.