mviereck / dockerfile-x11docker-xfce-wine-playonlinux

Xfce desktop including wine, playonlinux and pulseaudio.
MIT License
10 stars 7 forks source link

Install PlayOnLinux from git #2

Closed hackel closed 6 years ago

hackel commented 6 years ago

The PlayOnLinux package in Debian stretch is fairly old, at version 4.2.10. 4.2.12 is available in testing, but I think sticking with a stable base makes more sense. Even PlayOnLinux's own Debian repository only has 4.2.11 available. That's why I'm proposing installing from git. I have done this myself, and it runs fine from within the container. It even has its own "Update GIT" function in the app, that should work for those unfamiliar with git (though I'm not sure if this will just update to the latest master or the latest release tag).

Anyway, just a thought that I had. It's not a big deal as it's possible to do it oneself quite easily.

mviereck commented 6 years ago

I had a look at the PlayOnLinux repositories and find them a bit confusing. From the website download page there is 4.2.12 for debian available, but there is no repository for debian above jessie. I would not like to hardcode a special version but prefer a general solution.

I am not sure about cloning from git; does it also mean to compile within the docker image? Could you provide a code example how to install PlayOnLinux from git? At least I could provide that in Dockerfile as a comment that is easy to enable.

Another possibility is to use the version from buster in stretch, but that is not a clean way and may suddenly fail.

hackel commented 6 years ago

Yeah, I was confused by it, too. Since it's essentially just a python script, it doesn't need to be compiled, and can run in-place from a local repo. It looks like it does include a Makefile that compiles a binary direct rendering check utility, but so far I haven't needed this as it also comes with a statically compiled version. It also pre-compiles all the python modules, but that will be handled on the fly.

git clone --depth=1 --branch=4.2.12 https://github.com/PlayOnLinux/POL-POM-4

If you're installing the distro version as well, it should take care of the dependencies, but they are: python:any (>= 2.7.5-5~), wine, unzip, wget, xterm | x-terminal-emulator, python-wxgtk3.0, imagemagick, cabextract, mesa-utils, gettext-base, binutils, gnupg, icoutils, x11-utils, curl, netcat, bzip2, p7zip-full, libgl1-mesa-glx:i386

Here's how I'm running it currently:

x11docker --hostdisplay --gpu --pulseaudio --home --env "PULSE_SERVER=unix:/pulse/native" x11docker/xfce-wine-playonlinux ~/POL-POM-4/playonlinux

The more I think about it, the more I realize it probably doesn't make a lot of sense to do this, but at least the info is here for anyone who might want to do it themselves!

mviereck commented 6 years ago

Thanks for detailed explanation! Do you think there is a general way to find the latest version instead of hard coding --branch=4.2.12? I will look closer at this in the evening.

Something completly different: You set --env "PULSE_SERVER=unix:/pulse/native". I was confused, but checked it and found that at least firefox indeed needs that although it is declared in /etc/pulse/client.conf and clients like pavucontrol don't need it. It would be kind of you reporting me such issues! It is fixed now in version 3.9.7.4, you won't need to set PULSE_SERVER anymore.

mviereck commented 6 years ago

The more I think about it, the more I realize it probably doesn't make a lot of sense to do this, but at least the info is here for anyone who might want to do it themselves!

I think so, too. There seems to be not much active development on PlayOnlinux, and it does not make sense to do major setup for a small update.

But anyway, thanks for contribution!