New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can't resume failed install of dotnet45 #500

Closed
ScoreUnder opened this Issue May 16, 2015 · 25 comments

Comments

Projects
None yet
6 participants
@ScoreUnder
Copy link
Contributor

ScoreUnder commented May 16, 2015

error: dotnet45 conflicts with dotnet20, which is already installed.

dotnet45 conflicts with dotnet20 but also depends on it, so if any of its dependencies fail to install you have to trash the whole wineprefix to try again.

@austin987

This comment has been minimized.

Copy link
Contributor

austin987 commented May 16, 2015

Likely a WONTFIX. Do you have a usecase where some of those dependencies will fail then later work?

If one of those dependencies fails, that is the issue that should be fixed.

@ScoreUnder

This comment has been minimized.

Copy link
Contributor

ScoreUnder commented May 17, 2015

I think that having something both depending on and conflicting with the same thing is a strange idea, and I've not seen it in other package managers. The current way it's done means that the installation of all dependencies must be completed successfully first try in one sitting. You cannot stop and pick up where you left off.

The reason I asked originally was because dotnet30 usually fails to install for me.

Here are the hurdles I've encountered trying to install dotnet45 this time, in chronological order:

  • dotnet30 won't install -- for some reason, this seems to have fixed itself. I don't recall changing anything so I am slightly spooked, it's never worked before.
  • dotnet30's installer never exits -- it can be safely killed, and this will continue the winetricks setup process.
  • "XPSEP XP and Server 2003 32 bit.msi" hangs -- turning on the virtual desktop for wine fixed this issue and the above issue. (I turned this off after winetricks was done because I don't like it)
  • I was presented with this contradiction (the script instructed me to re-run it, but re-running it fails immediately):
------------------------------------------------------
NetFx30SP1_x86.exe exited with status 0
------------------------------------------------------
------------------------------------------------------
Working around wine bug 33450 -- Installing msxml3
------------------------------------------------------
Executing w_do_call msxml3
Executing load_msxml3
[...snip some output from firefox...]
------------------------------------------------------
Please download msxml3.msi from http://download.cnet.com/Microsoft-XML-Parser-MSXML-3-0-Service-Pack-7-SP7/3000-7241_4-10731613.html, place it in /home/score/.cache/winetricks/msxml3, then re-run this script.
------------------------------------------------------
./winetricks dotnet45  11.83s user 24.76s system 4% cpu 14:55.40 total
1 score@kirisame ~/src/winetricks/src % ./winetricks dotnet45
Executing w_do_call dotnet45
------------------------------------------------------
error: dotnet45 conflicts with dotnet20, which is already installed.
------------------------------------------------------

After fixing these, the install succeeds.

If you are looking to fix the issues in dependencies rather than the conflict/depend situation, I think all it would take (at least for anyone having problems similar to mine) is to move the msxml3 dependency warning to the very start of the install process, and to turn on the virtual desktop while the installs are happening.

@austin987

This comment has been minimized.

Copy link
Contributor

austin987 commented May 17, 2015

winetricks isn't a proper package manager, it's a shell script that makes
it easier to install some things.

winetricks doesn't control those Microsoft installers, which is where the
dependencies and conflicts come from.

Yes, it's unfortunate, but I don't see a practical solution to the issue
you're describing. If msxml3.msi is missing, dotnet35 will fail to install.
dotnet45 itself doesn't depend on msxml3, dotnet35 does, and dotnet45
depends on dotnet35. A hacky solution would be have dotnet45 check if
msxml3.msi is in the cache, but that's really hacky (and subject to code
rot whenever https://bugs.winehq.org/show_bug.cgi?id=33450 is fixed).

The conflicts stuff was added to avoid even more complicated issues with
users installing multiple versions of .Net in the same prefix in the wrong
order, and filing wine/winetricks bugs about those breakages.

On Sat, May 16, 2015 at 7:09 PM, Score_Under notifications@github.com
wrote:

I think that having something both depending on and conflicting with the
same thing is a strange idea, and I've not seen it in other package
managers. The current way it's done means that the installation of all
dependencies must be completed successfully first try in one sitting. You
cannot stop and pick up where you left off.

The reason I asked originally was because dotnet30 usually fails to
install for me.

Here are the hurdles I've encountered trying to install dotnet45 this
time, in chronological order:

  • dotnet30 won't install -- for some reason, this seems to have fixed
    itself. I don't recall changing anything so I am slightly spooked, it's
    never worked before.

  • dotnet30's installer never exits -- it can be safely killed, and
    this will continue the winetricks setup process.

  • "XPSEP XP and Server 2003 32 bit.msi" hangs -- turning on the
    virtual desktop for wine fixed this issue and the above issue. (I turned

    this off after winetricks was done because I don't like it)

    I was presented with this contradiction (the script instructed me to
    re-run it, but re-running it fails immediately):


    NetFx30SP1_x86.exe exited with status 0


    Working around wine bug 33450 -- Installing msxml3

    Executing w_do_call msxml3
    Executing load_msxml3

    [...snip some output from firefox...]

    Please download msxml3.msi from http://download.cnet.com/Microsoft-XML-Parser-MSXML-3-0-Service-Pack-7-SP7/3000-7241_4-10731613.html, place it in /home/score/.cache/winetricks/msxml3, then re-run this script.

    ./winetricks dotnet45 11.83s user 24.76s system 4% cpu 14:55.40 total
    1 score@kirisame ~/src/winetricks/src % ./winetricks dotnet45

    Executing w_do_call dotnet45

    error: dotnet45 conflicts with dotnet20, which is already installed.

After fixing these, the install succeeds.


Reply to this email directly or view it on GitHub
#500 (comment)
.

-Austin

@benpryke

This comment has been minimized.

Copy link

benpryke commented Jun 8, 2015

@ScoreUnder, how did you fix the final "dotnet45 conflicts with dotnet20" conflict, the last in your bulleted list? I am also having this problem.

@ScoreUnder

This comment has been minimized.

Copy link
Contributor

ScoreUnder commented Jun 8, 2015

I deleted the wineprefix, unfortunately. You can probably bypass it with winetricks --force, but I'm not completely convinced it will work.

@benpryke

This comment has been minimized.

Copy link

benpryke commented Jun 8, 2015

Thanks for your quick reply. Hmm, I started from scratch on a new wineprefix anyway. I tried bash winetricks --force dotnet45 corefonts and it made it past this error but I've received another later on, which doesn't turn up anything on Google:

Note: command 'wine netframework3.exe' returned status 236.  Aborting.

Sigh.

@yurikoles

This comment has been minimized.

Copy link

yurikoles commented Jun 24, 2015

It works with -q switch

@austin987 austin987 closed this Jul 6, 2015

@gareththomasnz

This comment has been minimized.

Copy link

gareththomasnz commented May 5, 2016

Man this is not fun - yes I have the same error

It seems to be a little erratic, for some reason it will not download the dotnet installer yet the download URL works.

All I get is the conflict error .I have reinstalled winetricks several times now same each time

@0xFireball

This comment has been minimized.

Copy link

0xFireball commented May 5, 2016

This simply does not work. I am unable to install dotnet45 and thus can't run new apps that demand I install it.

@gareththomasnz

This comment has been minimized.

Copy link

gareththomasnz commented May 5, 2016

No people have got it working

I may need to reinstal wine and start again. I am running a 64bit ubuntu stystem

@0xFireball

This comment has been minimized.

Copy link

0xFireball commented May 5, 2016

I am also running a 64-bit Kubuntu system. I even deleted my wineprefix and started over with a 32-bit one. After i got to the msxml3.msi and placed it where I was supposed to, it refused to resume with the conflict error

@gareththomasnz

This comment has been minimized.

Copy link

gareththomasnz commented May 5, 2016

well we both have the same problem lets see if we can figure out a step by step way to resolve it

@ScoreUnder

This comment has been minimized.

Copy link
Contributor

ScoreUnder commented May 9, 2016

Hi, can you try this? It's what eventually got it working for me:

  1. Start with a fresh 32-bit wineprefix
    • remember to keep WINEARCH (=win32) and WINEPREFIX exported throughout this whole process; I don't think wine "remembers" the arch of the wineprefix. If you don't know exactly how environment variables work then now is the time to learn :^)
  2. Run winecfg and turn on the virtual desktop (under "graphics")
  3. Create the directory ~/.cache/winetricks/msxml3, then go to http://download.cnet.com/Microsoft-XML-Parser-MSXML-3-0-Service-Pack-7-SP7/3000-7241_4-10731613.html and put the msxml3.msi installer into that directory. (If it's not named exactly that, rename it).
  4. Run winetricks dotnet45
@gareththomasnz

This comment has been minimized.

Copy link

gareththomasnz commented May 9, 2016

OK but we are not expert users so please make it plain as day

EG: For step one can you be more explanatory?

Your reply is appreciated greatly

@ScoreUnder

This comment has been minimized.

Copy link
Contributor

ScoreUnder commented May 9, 2016

I'd advise you to do everything from the terminal.

For each terminal that you want to work in, you must first point it to the correct wineprefix with the correct winearch. To do that:

export WINEPREFIX="$HOME/.wine32-dotnet" WINEARCH=win32

That will tell wine to work in a ~/.wine32-dotnet directory when you're running wine-related commands from that specific terminal. Wine will create the directory if it doesn't already exist. (If you close the terminal, you will need to enter that command again before you continue where you left off).

From there you can do steps 2 to 4 and with a bit of luck it should work. You will need to use that wineprefix for whatever you're doing in .NET under wine, which means you'll need to run the command above before running your program too. I get around that hindrance on my local machine by creating a script which launches my program:

#!/bin/sh
export WINEPREFIX="$HOME/.wine32-dotnet" WINEARCH=win32
exec wine /path/to/whatever.exe

Then I run that script instead of the exe file, which ensures it uses the right wine settings when it runs.

@austin987

This comment has been minimized.

Copy link
Contributor

austin987 commented May 10, 2016

FYI, WINEARCH only takes effect when the prefix is made, it's not 'forgetting' it.

If you're being prompted to download msmxl3 manually, your winetricks is very outdated. Update it before trying to debug further.

@ScoreUnder

This comment has been minimized.

Copy link
Contributor

ScoreUnder commented May 10, 2016

Fair enough, it was a long time since I needed to do this process. I might have to try again if that doesn't work.

@gareththomasnz

This comment has been minimized.

Copy link

gareththomasnz commented Jun 13, 2016

I have no idea whats going on but it worked and installed .net 4.5
What I am trying to do is play arma3 using steam

@gareththomasnz

This comment has been minimized.

Copy link

gareththomasnz commented Jun 13, 2016

So if I make the virtual desktop bigger & use the prefix in the ARMA3 shortcut link this should work?

@gareththomasnz

This comment has been minimized.

Copy link

gareththomasnz commented Jun 13, 2016

this is the old unmodified link to ARMA3 from its shortcut

env WINEPREFIX="/home/gareththomasnz/.wine" wine C:\windows\command\start.exe steam://rungameid/107410

@gareththomasnz

This comment has been minimized.

Copy link

gareththomasnz commented Jun 13, 2016

so this should work? but with 1920 x 1080

env WINEPREFIX="$HOME/.wine32-dotnet" WINEARCH=win32 wine C:\windows\command\start.exe steam://rungameid/107410

@gareththomasnz

This comment has been minimized.

Copy link

gareththomasnz commented Jun 13, 2016

No Arma3 does not launch - will keep trying as others have it working

@ScoreUnder

This comment has been minimized.

Copy link
Contributor

ScoreUnder commented Jun 13, 2016

The virtual desktop I only kept for the duration of the .NET install. It was there to work around things like installers hiding themselves in the taskbar and refusing to come out, so if you've installed .NET you can disable that now.

@gareththomasnz

This comment has been minimized.

Copy link

gareththomasnz commented Jun 14, 2016

Steam works fine but upon launching ARMA 3 nothing happens so I need to access logs to see what's going on

@gareththomasnz

This comment has been minimized.

Copy link

gareththomasnz commented Jun 14, 2016

I will be extremely pleased if it works eventually

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment