Cannot use WINE with WINEPREFIX on mounted external partition (NOT main block device)

Questions about Wine on Linux
Locked
User avatar
succodifrutta
Level 2
Level 2
Posts: 21
Joined: Sat Mar 28, 2020 5:26 am

Cannot use WINE with WINEPREFIX on mounted external partition (NOT main block device)

Post by succodifrutta »

Are there some bugs / limitations when creating and running wine if the prefix resides onto an external mounted partition?

Code: Select all

$ WINEARCH=win32 WINEPREFIX=/mnt/RAID0/path/to/wineprefix winecfg

0048:err:ole:StdMarshalImpl_MarshalInterface Failed to create ifstub, hr 0x80004002
0048:err:ole:CoMarshalInterface Failed to marshal the interface {6d5140c1-7436-11ce-8034-00aa006009fa}, hr 0x80004002
0048:err:ole:apartment_get_local_server_stream Failed: 0x80004002
0040:err:module:open_builtin_file failed to load .so lib "/usr/lib32/wine/wineusb.sys.so"
0040:err:setupapi:SetupDefaultQueueCallbackW copy error 1812 L"@wineusb.sys,-1" -> L"C:\\windows\\inf\\wineusb.inf"
0040:err:module:open_builtin_file failed to load .so lib "/usr/lib32/wine/l3codeca.acm.so"
0040:err:winediag:gnutls_initialize failed to load libgnutls, no support for encryption
0040:err:winediag:gnutls_initialize failed to load libgnutls, no support for pfx import/export
0040:err:module:open_builtin_file failed to load .so lib "/usr/lib32/wine/mp3dmod.dll.so"
0054:err:winediag:gnutls_initialize failed to load libgnutls, no support for encryption
005c:err:winediag:gnutls_initialize failed to load libgnutls, no support for encryption

Code: Select all

OperatingSystem (/) is in ---> /dev/nvme0n1p2

WINEPREFIX (/mnt/RAID0/path/to/wineprefix) is in ---> /dev/md127

Code: Select all

# /dev/nvme0n1p2
UUID=blahblahblah / ext4 rw,relatime 0 1

# /dev/md127
LABEL=RAID0  /mnt/RAID0 ext4 rw,relatime,stripe=256  0 2


I also have problems onto NTFS partition:

Code: Select all

$ WINEARCH=win32 WINEPREFIX=/mnt/NTFS/path/to/NTFSwineprefix winecfg
wine: created the configuration directory '/mnt/NTFS/path/to/NTFSwineprefix'
002c:fixme:winediag:LdrInitializeThunk wine-staging 5.22 is a testing version containing experimental patches.
002c:fixme:winediag:LdrInitializeThunk Please mention your exact version when filing bug reports on winehq.org.
002c:err:wineboot:main Cannot set the dir to L"C:\\windows" (2)
002c:err:wineboot:create_disk_serial_number wine: failed to create L"C:\\.windows-serial".
wine: could not open working directory L"unix\\mnt\\NTFS\\path\\to\\NTFSwineprefix\\", starting in the Windows directory.
wine: could not open working directory L"unix\\mnt\\NTFS\\path\\to\\NTFSwineprefix\\", starting in the Windows directory.
002c:err:winediag:nodrv_CreateWindow Application tried to create a window, but no driver could be loaded.
002c:err:winediag:nodrv_CreateWindow The explorer process failed to start.
0040:err:winediag:nodrv_CreateWindow Application tried to create a window, but no driver could be loaded.
0040:err:winediag:nodrv_CreateWindow The explorer process failed to start.
^C0024:err:seh:NtRaiseException Unhandled exception code c000013a flags 0 addr 0xf7f19549

Code: Select all

OperatingSystem (/) is in ---> /dev/nvme0n1p2

WINEPREFIX (/mnt/NTFS/path/to/wineprefix) is in ---> /dev/sdb3

Code: Select all

# /dev/nvme0n1p2
UUID=blahblahblah / ext4 rw,relatime 0 1

# /dev/sdb3
UUID=Windows10NTFS /mnt/NTFS ntfs rw,nosuid,nodev,uid=1000,gid=1000,dmask=022,fmask=133,allow_other,big_writes,windows_names,relatime,owner,user,exec 0 0
SetantaLP
Level 3
Level 3
Posts: 54
Joined: Mon Jul 31, 2017 3:55 am

Re: Cannot use WINE with WINEPREFIX on mounted external partition (NOT main block device)

Post by SetantaLP »

I think windows_names in the mount options in the problem here, since it forces all folders you create on the partition to comply with the windows rules of which characters are not allowed in file/folder names.
And that causes issues with wine, because in order to fully work wine needs a folder/symlink called c: as virtual main drive, but since windows uses ":" to separate the drive letter from a path this character is not allowed in folder names, so wine can't create that folder when creating the prefix.
To solve that problem either remove windows_names from the mount options or create the prefix on a different partition (or in case you use proton via steam replace the compatdata folder in the library on the ntfs partition with a symlink to the compatdata folder on the main partition).
Locked