Project

General

Profile

Ambiente Isolato per wine a 32 bit » History » Version 5

Fluidone Morinmoto, 11/30/2025 10:26 AM

1 1 Fluidone Morinmoto
h1. Ambiente Isolato per wine a 32 bit
2
3
4
Puoi isolare l'Aurora Toolset in un ambiente separato, in cui libgd3:i386 sia installata senza interferire con il sistema principale.
5
6
Installa schroot
7
8
<pre>
9
$ sudo apt install schroot debootstrap
10
</pre>
11
12
Configura un ambiente chroot a 32-bit:
13
14
h2. Debian
15
16
<pre>
17
$ sudo debootstrap --arch=i386 bullseye /srv/chroot/nwn32 http://deb.debian.org/debian
18
</pre>
19
20
Modifica il file /etc/schroot/schroot.conf e aggiungi:
21
22
<pre>
23
[nwn32]
24
description=Debian 32-bit environment for Neverwinter Nights Toolset
25
directory=/srv/chroot/nwn32
26
root-users=tuo-utente
27
type=directory
28
users=tuo-utente
29
</pre>
30
31
Avvia schroot come utente root e installa sudo:
32
33
<pre>
34
$ sudo schroot -c nwn32 -u root
35
(nwn32)$ apt update
36
(nwn32)$ apt install sudo
37
(nwn32)$ usermod -aG sudo tuo-utente
38
(nwn32)$ exit
39
</pre>
40
41
Adesso entra nell'ambiente nwn32 e installa wine32 ed eventuali pacchetti necessari:
42
43
<pre>
44
$ schroot -c nwn32
45
(nwn32)$ sudo dpkg --add-architecture i386
46
(nwn32)$ sudo apt install wget gnupg2 libgd3:i386 libwine:i386 wine32 mesa-utils
47
</pre>
48
49
Librerie necessarie:
50
51
Core OpenGL / Mesa
52
53
<pre>
54
(nwn32)$ sudo apt install libgl1-mesa-glx:i386 libgl1-mesa-dri:i386 libglu1-mesa:i386 libglapi-mesa:i386 libxatracker2:i386 libdrm2:i386
55
</pre>
56
57
X11 e estensioni
58
59
<pre>
60
(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
61
</pre>
62
63
Font / Rendering
64
65
<pre>
66
(nwn32)$ sudo apt install libfreetype6:i386 libfontconfig1:i386 libpng16-16:i386 libsm6:i386 libice6:i386
67
</pre>
68
69
Audio / OpenAL
70
<pre>
71
(nwn32)$ sudo apt install libopenal1:i386 libasound2:i386 libasound2-plugins:i386
72
</pre>
73
74
Extra per Wine / compatibilità
75
<pre>
76
(nwn32)$ sudo apt install libc6:i386 libc6-dev-i386 libgcc-s1:i386 libstdc++6:i386 libtinfo6:i386 libncurses6:i386
77
</pre>
78
79
Driver video 32-bit (se NVIDIA/AMD proprietari)
80
81
<pre>
82
(nwn32)$ sudo apt install libnvidia-glx:i386 libnvidia-glvkspirv:i386
83
</pre>
84
85
Esportare il display per avviare finestre dentro l'ambiente:
86
87
<pre>
88
(nwn32)$ export DISPLAY=:0
89
</pre>
90
91
h4. winetricks extra sources
92
93
Aggiungere a /etc/apt/sources.list:
94
95
<pre>
96
deb http://deb.debian.org/debian bullseye main contrib non-free
97
deb http://deb.debian.org/debian bullseye-updates main contrib non-free
98
deb http://security.debian.org/debian-security bullseye-security main contrib non-free
99
</pre>
100
101
poi:
102
103
<pre>
104
(nwn32)$ sudo apt update
105
(nwn32)$ sudo apt install winetricks
106
</pre>
107
108
h4. Librerie NVidia in posizioni non standard
109
110
111
Dentro schroot installa le librerie corrispondenti alla versione del driver host:
112
113
<pre>
114
(nwn32)$ sudo dpgk --add-architecture i386
115
(nwn32)$ sudo apt update
116
(nwn32)$ sudo apt install nvidia-driver-libs:i386
117
</pre>
118
119
Nel sistema host verifica dove si trovano le librerie:
120
121
<pre>
122
$ cd /usr/lib
123
$ find . -name "libGLX_nvidia.so.0"
124
</pre>
125
126
Individua nell'output le librerie i386 e poi monta la directory delle librerie dal sistema host nel sistema schroot:
127
128
<pre>
129
$ sudo mount --bind /usr/lib/i386-linux-gnu/ /srv/chroot/nwn32/usr/lib/i386-linux-gnu/nvidia/current/
130
</pre>
131
132
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
133
134
<pre>
135
(nwn32)$ sudo mkdir -p /usr/lib32
136
(nwn32)$ cd /usr/lib32
137
(nwn32)$ sudo mkdir -p nvidia
138
(nwn32)$ sudo ln -sf /usr/lib/i386-linux-gnu/nvidia/current/libGLX_nvidia.so.0 nvidia/libGLX.so.0
139
(nwn32)$ sudo ln -sf /usr/lib/i386-linux-gnu/nvidia/current/libEGL_nvidia.so.0 nvidia/libEGL.so.1
140
(nwn32)$ sudo ln -sf /usr/lib/i386-linux-gnu/nvidia/current/libGLESv2_nvidia.so.2 nvidia/libGLESv2.so.2
141
(nwn32)$ sudo ln -sf /usr/lib/i386-linux-gnu/nvidia/current/libGLESv1_CM_nvidia.so.1 nvidia/libGLESv1_CM.so.1
142
(nwn32)$ sudo ln -sf /usr/lib/i386-linux-gnu/nvidia/current/libcuda.so.1 nvidia/libcuda.so.1
143
</pre>
144
145
Poi impostare LD_LIBRARY_PATH:
146
147
<pre>
148
(nwn32)$ export LD_LIBRARY_PATH=/usr/lib32/nvidia:$LD_LIBRARY_PATH
149
(nwn32)$ export WINEPREFIX="$HOME/.wine32/" WINEARCH=win32  wine nwtoolset.exe
150
151
</pre>
152
153
h4. Montare un percorso esterno 
154
155
Modifica il file @/etc/schroot/default/fstab@ :
156
157
<pre>
158
/media/tuo-utente/VOLUME_ESTERNO/Giochi/Neverwinter/Neverwinter_Enhanced_Installed /srv/chroot/nwn32/mnt/nwn_game none rw,bind 0 0
159
</pre>
160
161
Crea il punto di mount nel sistema host:
162
163
<pre>
164
$ sudo mkdir -p /srv/chroot/nwn32/mnt/nwn_game
165
</pre>
166
167
h3. Installare i font
168
169
<pre>
170
$ sudo apt install ttf-mscorefonts-installer
171
$ cp /usr/share/fonts/truetype/msttcorefonts/* /home/user/.wine_prefix_dir/drive_c/windows/Fonts
172
</pre>
173
174
Installare font aggiuntivi
175
176
<pre>
177
$ winetricks corefonts
178
$ winetricks tahoma
179
$ winetricks allfonts
180
</pre>
181
182
h2. Ubuntu 20.04
183
184
<pre>
185
$ sudo debootstrap --arch=i386 focal /srv/chroot/nwn32 http://archive.ubuntu.com/ubuntu/
186
</pre>
187
188
Modifica il file /etc/schroot/schroot.conf e aggiungi:
189
190
<pre>
191
[nwn32]
192
description=Debian 32-bit environment for Neverwinter Nights Toolset
193
directory=/srv/chroot/nwn32
194
root-users=tuo-utente
195
type=directory
196
users=tuo-utente
197
</pre>
198
199
Avvia schroot come utente root e installa sudo:
200
201
<pre>
202
$ sudo schroot -c nwn32 -u root
203
(nwn32)$ apt update
204
(nwn32)$ apt install sudo
205
(nwn32)$ usermod -aG sudo tuo-utente
206
(nwn32)$ exit
207
</pre>
208
209 2 Fluidone Morinmoto
Adesso entra nell'ambiente nwn32 aggiungi architettura i386, installa software-properties-common e aggiungi i repository universe e multiverse:
210 1 Fluidone Morinmoto
211
<pre>
212
$ schroot -c nwn32
213
(nwn32)$ sudo dpkg --add-architecture i386
214 2 Fluidone Morinmoto
(nwn32)$ sudo apt install software-properties-common
215
(nwn32)$ sudo add-apt-repository universe
216
(nwn32)$ sudo add-apt-repository multiverse
217
</pre>
218
219 3 Fluidone Morinmoto
e installa wine32, winetricks ed eventuali pacchetti necessari:
220 2 Fluidone Morinmoto
221
<pre>
222 3 Fluidone Morinmoto
(nwn32)$ sudo apt install wget gnupg libgd3:i386 libwine:i386 wine32 mesa-utils winetricks
223 1 Fluidone Morinmoto
</pre>
224
225
Librerie necessarie:
226
227
Core OpenGL / Mesa
228
229
<pre>
230
(nwn32)$ sudo apt install libgl1-mesa-glx:i386 libgl1-mesa-dri:i386 libglu1-mesa:i386 libglapi-mesa:i386 libxatracker2:i386 libdrm2:i386
231
</pre>
232
233
X11 e estensioni
234
235
<pre>
236
(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
237
</pre>
238
239
Font / Rendering
240
241
<pre>
242
(nwn32)$ sudo apt install libfreetype6:i386 libfontconfig1:i386 libpng16-16:i386 libsm6:i386 libice6:i386
243
</pre>
244
245
Audio / OpenAL
246
<pre>
247
(nwn32)$ sudo apt install libopenal1:i386 libasound2:i386 libasound2-plugins:i386
248
</pre>
249
250
Extra per Wine / compatibilità
251
<pre>
252
(nwn32)$ sudo apt install libc6:i386 libc6-dev-i386 libgcc-s1:i386 libstdc++6:i386 libtinfo6:i386 libncurses6:i386
253
</pre>
254
255
Driver video 32-bit (se NVIDIA/AMD proprietari)
256
257
<pre>
258
(nwn32)$ sudo apt install libnvidia-glx:i386 libnvidia-glvkspirv:i386
259
</pre>
260
261
Esportare il display per avviare finestre dentro l'ambiente:
262
263
<pre>
264
(nwn32)$ export DISPLAY=:0
265
</pre>
266
267
h4. Librerie NVidia in posizioni non standard
268
269
270
Dentro schroot installa le librerie corrispondenti alla versione del driver host:
271
272
<pre>
273 4 Fluidone Morinmoto
(nwn32)$ sudo dpkg --add-architecture i386
274 5 Fluidone Morinmoto
(nwn32)$ sudo add-apt-repository ppa:graphics-drivers/ppa
275 1 Fluidone Morinmoto
(nwn32)$ sudo apt update
276 5 Fluidone Morinmoto
(nwn32)$ sudo apt install nvidia-driver-470
277 1 Fluidone Morinmoto
(nwn32)$ sudo apt install nvidia-driver-libs:i386
278
</pre>
279
280
Nel sistema host verifica dove si trovano le librerie:
281
282
<pre>
283
$ cd /usr/lib
284
$ find . -name "libGLX_nvidia.so.0"
285
</pre>
286
287
Individua nell'output le librerie i386 e poi monta la directory delle librerie dal sistema host nel sistema schroot:
288
289
<pre>
290
$ sudo mount --bind /usr/lib/i386-linux-gnu/ /srv/chroot/nwn32/usr/lib/i386-linux-gnu/nvidia/current/
291
</pre>
292
293
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
294
295
<pre>
296
(nwn32)$ sudo mkdir -p /usr/lib32
297
(nwn32)$ cd /usr/lib32
298
(nwn32)$ sudo mkdir -p nvidia
299
(nwn32)$ sudo ln -sf /usr/lib/i386-linux-gnu/nvidia/current/libGLX_nvidia.so.0 nvidia/libGLX.so.0
300
(nwn32)$ sudo ln -sf /usr/lib/i386-linux-gnu/nvidia/current/libEGL_nvidia.so.0 nvidia/libEGL.so.1
301
(nwn32)$ sudo ln -sf /usr/lib/i386-linux-gnu/nvidia/current/libGLESv2_nvidia.so.2 nvidia/libGLESv2.so.2
302
(nwn32)$ sudo ln -sf /usr/lib/i386-linux-gnu/nvidia/current/libGLESv1_CM_nvidia.so.1 nvidia/libGLESv1_CM.so.1
303
(nwn32)$ sudo ln -sf /usr/lib/i386-linux-gnu/nvidia/current/libcuda.so.1 nvidia/libcuda.so.1
304
</pre>
305
306
Poi impostare LD_LIBRARY_PATH:
307
308
<pre>
309
(nwn32)$ export LD_LIBRARY_PATH=/usr/lib32/nvidia:$LD_LIBRARY_PATH
310
(nwn32)$ export WINEPREFIX="$HOME/.wine32/" WINEARCH=win32  wine nwtoolset.exe
311
312
</pre>
313
314
h4. Montare un percorso esterno 
315
316
Modifica il file @/etc/schroot/default/fstab@ :
317
318
<pre>
319
/media/tuo-utente/VOLUME_ESTERNO/Giochi/Neverwinter/Neverwinter_Enhanced_Installed /srv/chroot/nwn32/mnt/nwn_game none rw,bind 0 0
320
</pre>
321
322
Crea il punto di mount nel sistema host:
323
324
<pre>
325
$ sudo mkdir -p /srv/chroot/nwn32/mnt/nwn_game
326
</pre>
327
328
h3. Installare i font
329
330
<pre>
331
$ sudo apt install ttf-mscorefonts-installer
332
$ cp /usr/share/fonts/truetype/msttcorefonts/* /home/user/.wine_prefix_dir/drive_c/windows/Fonts
333
</pre>
334
335
Installare font aggiuntivi
336
337
<pre>
338
$ winetricks corefonts
339
$ winetricks tahoma
340
$ winetricks allfonts
341
</pre>