kzwkt / winetricks

Automatically exported from code.google.com/p/winetricks
0 stars 0 forks source link

dotnet30sp1 install fails due to "XPS Essentials" #402

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
wine ver & OS: wine-1.7.11, winetricks 20130919 on FreeBSD_11-current_amd64

PROBLEM OUTLINE:
1. winetricks installed these normally:
consolas corefonts fontfix liberation lucida opensymbol tahoma unifont uff
comctl32 crypt32 ie6 pngfilt mdac27 mdac28 msasn1
msls31 msxml3 msxml6 secur32 winhttp wininet

2. Start installing dotnet35. Normal progress up to dotnet30 where it gives 
error message => run these
$ wine "c:\\windows\\Microsoft.NET\\Framework\\v2.0.50727\\ngen.exe" update
and verify .NET installation using MS Verification Tool netfx_setupverifier.exe
Everything checks-out normal.

3. Continue with dotnet35: dotnet20sp1 is installed, continues to dotnet30sp1 
and breaks. Message is:
The .NET Runtime Optimization Service is running.
NetFx30SP1_x86.exe exited with status 236
dotnet30sp1 install completed, but installed file 
/home/vino/dosdevices/c:/windows/system32/XpsFilt.dll not found

4. Run GAC again:
wine "c:\\windows\\Microsoft.NET\\Framework\\v2.0.50727\\ngen.exe" update
Microsoft (R) CLR Native Image Generator - Version 2.0.50727.1433
Copyright (c) Microsoft Corporation.  All rights reserved.
fixme:ole:RemUnknown_QueryInterface No interface for iid 
{00000019-0000-0000-c000-000000000046}
err:ole:marshal_object couldn't get IPSFactory buffer for interface 
{5c6fb596-4828-4ed5-b9dd-293dad736fb5}
err:ole:StdMarshalImpl_MarshalInterface Failed to create ifstub, hres=0x80040155
err:ole:CoMarshalInterface Failed to marshal the interface 
{5c6fb596-4828-4ed5-b9dd-293dad736fb5}, 80040155
err:rpc:I_RpcReceive we got fault packet with status 0x80040155
fixme:ole:NdrClearOutParameters (0x33e0c8,0x631b63c6,0x33e35c): stub
err:ole:CoReleaseMarshalData IMarshal::ReleaseMarshalData failed with error 
0x8001011d
err:rpc:I_RpcReceive we got fault packet with status 0x1c010003
err:ole:ifproxy_release_public_refs IRemUnknown_RemRelease failed with error 
0x800706b5
fixme:ole:CoCreateInstance no instance created for interface 
{5c6fb596-4828-4ed5-b9dd-293dad736fb5} of class 
{20c77723-3bc1-47b6-886d-5d5e6e113573}, hres is 0x80040155
Exception from HRESULT: 0x80040155

Advise what additional debug output you require. Is it possible one of the 
packages installed in step #1 is causing this problem?

Original issue reported on code.google.com by r...@berentweb.com on 4 Feb 2014 at 12:14

GoogleCodeExporter commented 9 years ago
Please retest in a clean WINEPREFIX. You've got a ton of native overrides, 
making a big mess..

Original comment by austinenglish@gmail.com on 4 Feb 2014 at 5:58

GoogleCodeExporter commented 9 years ago
Hi. WINEPREFIX was completely clean and in pristine state before I started with 
step #1 described above. ~/.config has nothing but listings under sub-folder 
menus/.
The relevant settings in env I have are:
WINEARCH=win32
WINEPREFIX=/home/vino
XDG_DATA_DIRS=/usr/share /usr/local/share /usr/local/share/gnome

I invoked winetricks directly (csh), will "$ bash winetricks" make a difference?
Do you also think it is worthwile re-trying by omitting step #1 (maybe 
corefonts + msxml3 only)?

Original comment by r...@berentweb.com on 4 Feb 2014 at 6:18

GoogleCodeExporter commented 9 years ago
> WINEPREFIX=/home/vino
you probably don't want that

> I invoked winetricks directly (csh), will "$ bash winetricks" make a 
difference?

Wine is written to be portable to any bourne shell, but it's certainly worth 
checking.

> Do you also think it is worthwile re-trying by omitting step #1 (maybe 
corefonts + msxml3 only)?

That's what I meant by a clean WINEPREFIX. Try:
$ winetricks -q -v corefonts msxml3 dotnet30sp1

Though msxml3 shouldn't be needed for dotnet30sp1, why are you doing that? Got 
a bug for it?

Original comment by austinenglish@gmail.com on 4 Feb 2014 at 6:35

GoogleCodeExporter commented 9 years ago
> Though msxml3 shouldn't be needed for dotnet30sp1
I thought it was - I'll try without this (corefont only)

> you probably don't want that:  WINEPREFIX=/home/vino
How does one change the wine install folder then? I was under the impression 
that a plain symlink: "ln -s /home/vino ~/.wine" would actually be more 
detrimental. Unless of course, you are saying that messing with the default 
.wine location causes unpredictable issues, and I should just keep it there?

Original comment by r...@berentweb.com on 4 Feb 2014 at 6:52

GoogleCodeExporter commented 9 years ago
That is how to change the directory, but that would make your home directory 
itself the WINEPREFIX, not a subdirectory. You probably meant to do:
$ WINEPREFIX=/home/vino/.wine

or are you intentionally giving wine its 'own home folder'? Why?

(moving the WINEPREFIX on its own should not be an issue, it's encouraged for 
prefix isolation)

Original comment by austinenglish@gmail.com on 4 Feb 2014 at 6:55

GoogleCodeExporter commented 9 years ago
> are you intentionally giving wine its 'own home folder'?
Yes, that's the idea.

> Why?
ZFS snapshots. Being the paranoid sort, I plan on taking a snapshot of the 
completed setup, then restoring it from time-to-time and before any new 
winetricks install. This was an older setop however, and my prior post + your 
question prompted me to re-think. I have thus deleted the vino folder and 
mounted zfs directly to ~/.wine:
# zfs create -o mountpoint=/home/myuser/.wine zpool/wine

I have completed the install, and I should share with you, as there were some 
problems and there might be specific details related to FreeBSD: My actual aim 
was to install dotnet35sp1. After several trials the optimal way seems to be:
* $ winetricks corefonts dotnet30 => hangs at final dotnet30 install but 
completes. Exit with ctrl+c
* rebuild GAC => no errors
* $ winetricks dotnet35sp1 => For XPS Essentils, select "don't register" & 
continue. Install completes.
* rebuild GAC => two errors encountered, files attached. Install completed.

Original comment by r...@berentweb.com on 4 Feb 2014 at 8:23

Attachments:

GoogleCodeExporter commented 9 years ago
I decided to give dotnet40 a run after completing most of what I wanted to 
setup. Unfortunately it gave me a nasty error and exited.

# zfs rollback zpool/wine@clean
puts me right back where I was before :)

Original comment by r...@berentweb.com on 4 Feb 2014 at 9:03

GoogleCodeExporter commented 9 years ago
Using zfs on Linux?  How unclean!  That's like running Windows apps... oh.

Original comment by daniel.r...@gmail.com on 4 Feb 2014 at 9:10

GoogleCodeExporter commented 9 years ago
> wine ver & OS: wine-1.7.11, winetricks 20130919 on FreeBSD_11-current_amd64

;)

Original comment by austinenglish@gmail.com on 4 Feb 2014 at 9:12

GoogleCodeExporter commented 9 years ago
I tried to reproduce this on PCBSD10, but the PBI is missing currently 
(apparently failed to build).

Original comment by austinenglish@gmail.com on 6 Feb 2014 at 2:14

GoogleCodeExporter commented 9 years ago
Austin: Not understood - Is it the wine binary package that's missing? pkgng 
repos for 10 and 11 don't have the wine binary yet, but the port does build 
(you need an i386 jail to build the amd_64 installation of wine). I can send 
you the binary for both 32 and 64 versions, but they are for 11-current. You 
can force the install of the v.11 package on to v.10, but I have no idea what 
discrepancies that would cause for the wine layer.

Original comment by r...@berentweb.com on 6 Feb 2014 at 9:57

GoogleCodeExporter commented 9 years ago
I was attempting to use the prebuilt .PBI (PC-BSD installer file) for wine. 
It's now working (wine-1.7.12). Using that, then running:
$ wineserver -k ; rm -rf ~/.wine
$ bash winetricks -q -v dotnet30sp1

shows a similar failure to you:
dotnet30sp1 install completed, but installed file 
/usr/home/austin/.wine/dosdevices/c:/windows/system32/XpsFilt.dll not found

the installer did exit with status 0, however.

I noticed that the PC-BSD build of wine has some issues (missing gnutls, 
notably). Could you please attach the full output from winetricks when running 
the above command? I'm attaching mine for comparison.

FWIW, this is very unlikely to be a winetricks bug. It's likely either a bug in 
the FreeBSD port, or wine itself.

Original comment by austinenglish@gmail.com on 12 Feb 2014 at 9:51

Attachments:

GoogleCodeExporter commented 9 years ago
I noticed after posting that PBI is a PC-BSD'ism. There are some slight 
differences on the PC-BSD side.

Anyway, as I understand, you want me to nuke my ~/.wine folder and capture the 
code when I re-install dotnet30sp1. Good thing I can restore it on-the-fly 
after I'm done..

We had discussed the following some time back, but as I recall it did not work 
for me: How do I capture / pipe the output from the wineserver? I had found 
that a simple direct (> dn30sp1.log) does not work (unless I remember wrong).

Original comment by r...@berentweb.com on 12 Feb 2014 at 10:30

GoogleCodeExporter commented 9 years ago
If the wineserver is not already running, redirecting stdout and stderr
from the app should get wineserver output, too.

Or you can capture it separately by starting wineserver manually, e.g.
  wineserver -f -p > wineserver.log 2>&1

Original comment by daniel.r...@gmail.com on 12 Feb 2014 at 10:34

GoogleCodeExporter commented 9 years ago
I want you to try in a clean wineprefix, yes. Alternatively, you could:
$ mv ~/.wine ~/.wine.bak

or:
$ WINEPREFIX=~/.wine-dotnet30 winetricks -q -v dotnet30sp1 &> tee output.txt

Original comment by austinenglish@gmail.com on 12 Feb 2014 at 10:53