Project

General

Profile

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

Fluidone Morinmoto, 11/30/2025 10:10 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
Adesso entra nell'ambiente nwn32 e installa wine32 ed eventuali pacchetti necessari:
210
211
<pre>
212
$ schroot -c nwn32
213
(nwn32)$ sudo dpkg --add-architecture i386
214
(nwn32)$ sudo apt install wget gnupg2 libgd3:i386 libwine:i386 wine32 mesa-utils
215
</pre>
216
217
Librerie necessarie:
218
219
Core OpenGL / Mesa
220
221
<pre>
222
(nwn32)$ sudo apt install libgl1-mesa-glx:i386 libgl1-mesa-dri:i386 libglu1-mesa:i386 libglapi-mesa:i386 libxatracker2:i386 libdrm2:i386
223
</pre>
224
225
X11 e estensioni
226
227
<pre>
228
(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
229
</pre>
230
231
Font / Rendering
232
233
<pre>
234
(nwn32)$ sudo apt install libfreetype6:i386 libfontconfig1:i386 libpng16-16:i386 libsm6:i386 libice6:i386
235
</pre>
236
237
Audio / OpenAL
238
<pre>
239
(nwn32)$ sudo apt install libopenal1:i386 libasound2:i386 libasound2-plugins:i386
240
</pre>
241
242
Extra per Wine / compatibilità
243
<pre>
244
(nwn32)$ sudo apt install libc6:i386 libc6-dev-i386 libgcc-s1:i386 libstdc++6:i386 libtinfo6:i386 libncurses6:i386
245
</pre>
246
247
Driver video 32-bit (se NVIDIA/AMD proprietari)
248
249
<pre>
250
(nwn32)$ sudo apt install libnvidia-glx:i386 libnvidia-glvkspirv:i386
251
</pre>
252
253
Esportare il display per avviare finestre dentro l'ambiente:
254
255
<pre>
256
(nwn32)$ export DISPLAY=:0
257
</pre>
258
259
h4. winetricks extra sources
260
261
Aggiungere a /etc/apt/sources.list:
262
263
<pre>
264
deb http://deb.debian.org/debian bullseye main contrib non-free
265
deb http://deb.debian.org/debian bullseye-updates main contrib non-free
266
deb http://security.debian.org/debian-security bullseye-security main contrib non-free
267
</pre>
268
269
poi:
270
271
<pre>
272
(nwn32)$ sudo apt update
273
(nwn32)$ sudo apt install winetricks
274
</pre>
275
276
h4. Librerie NVidia in posizioni non standard
277
278
279
Dentro schroot installa le librerie corrispondenti alla versione del driver host:
280
281
<pre>
282
(nwn32)$ sudo dpgk --add-architecture i386
283
(nwn32)$ sudo apt update
284
(nwn32)$ sudo apt install nvidia-driver-libs:i386
285
</pre>
286
287
Nel sistema host verifica dove si trovano le librerie:
288
289
<pre>
290
$ cd /usr/lib
291
$ find . -name "libGLX_nvidia.so.0"
292
</pre>
293
294
Individua nell'output le librerie i386 e poi monta la directory delle librerie dal sistema host nel sistema schroot:
295
296
<pre>
297
$ sudo mount --bind /usr/lib/i386-linux-gnu/ /srv/chroot/nwn32/usr/lib/i386-linux-gnu/nvidia/current/
298
</pre>
299
300
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
301
302
<pre>
303
(nwn32)$ sudo mkdir -p /usr/lib32
304
(nwn32)$ cd /usr/lib32
305
(nwn32)$ sudo mkdir -p nvidia
306
(nwn32)$ sudo ln -sf /usr/lib/i386-linux-gnu/nvidia/current/libGLX_nvidia.so.0 nvidia/libGLX.so.0
307
(nwn32)$ sudo ln -sf /usr/lib/i386-linux-gnu/nvidia/current/libEGL_nvidia.so.0 nvidia/libEGL.so.1
308
(nwn32)$ sudo ln -sf /usr/lib/i386-linux-gnu/nvidia/current/libGLESv2_nvidia.so.2 nvidia/libGLESv2.so.2
309
(nwn32)$ sudo ln -sf /usr/lib/i386-linux-gnu/nvidia/current/libGLESv1_CM_nvidia.so.1 nvidia/libGLESv1_CM.so.1
310
(nwn32)$ sudo ln -sf /usr/lib/i386-linux-gnu/nvidia/current/libcuda.so.1 nvidia/libcuda.so.1
311
</pre>
312
313
Poi impostare LD_LIBRARY_PATH:
314
315
<pre>
316
(nwn32)$ export LD_LIBRARY_PATH=/usr/lib32/nvidia:$LD_LIBRARY_PATH
317
(nwn32)$ export WINEPREFIX="$HOME/.wine32/" WINEARCH=win32  wine nwtoolset.exe
318
319
</pre>
320
321
h4. Montare un percorso esterno 
322
323
Modifica il file @/etc/schroot/default/fstab@ :
324
325
<pre>
326
/media/tuo-utente/VOLUME_ESTERNO/Giochi/Neverwinter/Neverwinter_Enhanced_Installed /srv/chroot/nwn32/mnt/nwn_game none rw,bind 0 0
327
</pre>
328
329
Crea il punto di mount nel sistema host:
330
331
<pre>
332
$ sudo mkdir -p /srv/chroot/nwn32/mnt/nwn_game
333
</pre>
334
335
h3. Installare i font
336
337
<pre>
338
$ sudo apt install ttf-mscorefonts-installer
339
$ cp /usr/share/fonts/truetype/msttcorefonts/* /home/user/.wine_prefix_dir/drive_c/windows/Fonts
340
</pre>
341
342
Installare font aggiuntivi
343
344
<pre>
345
$ winetricks corefonts
346
$ winetricks tahoma
347
$ winetricks allfonts
348
</pre>