Wine Reviews has release information and reviews of Windows applications and games running on Linux Mac OS X and Android using Wine from WineHQ.org Q4Wine PlayOnLinux PlayOnMac WineBottler WineSkin WineTricks and Wine-Staging. Wine is an Open Source implementation of the Windows API on top of X and Unix.

Pages

Thursday, September 24, 2015

PlayOnLinux and PlayOnMac 5 the Current state

Hi everybody,

I'm writing this post to give some news about PlayOnLinux and PlayOnMac v5. First of all, the development is rather going well. It takes quite a
lot of time because we have to maintain PlayOnLinux 4 and the servers
at the same time, and a lot of work remains to be done. This is why it is not possible to give an ETA for the release. However, I can show you
what is done so far.

User interface

I guess that this is one of the topic that will concern you the most.
A good news is that the application is designed to be totally decoupled
from PlayOnLinux core. Basically, it means that we can end up with
several interface implementation without changing the core (containing
most features)

JavaFX interface

This is the main reference interface. This interface is supported on
Linux and on OSX. We are trying to spend time to make it as user
friendly as possible to avoid any confusion.
Here are some screenshot of the current version:

Installed applications

Available applications. (We want to replace POL logos by something unique for each program)

Available applications: Description of an installer

This is a script installing a version of wine (1.7.39)

Future configuration window

QT Interface

We are also aware that some of you do not really like the idea of
having a non native interface. This is why some effort are put in the
implementation of a QT interface. (This development is mostly done by seijikun, a big thank to him).

This interface aims to be as close as possible to PlayOnLinux 4 current interface. The QT interface is not fully implemented at all for the moment, I'm
personally putting some effort in implementing the core features, so I
do not have a lot of time to help seijkun. But still, here is a
screenshot so that you can have an idea.

CLI interface

The CLI interface is not implemented yet at all. We want, on the long run to be able to run PlayOnLinux from the command line.

Integration test mock interface

This interface allows us to run automated test. I'll talk about this in a short paragraph.

Scripting

Introducing templates

The scripts (or installers) are written in Python. Basically, it will
give to the scriptors as much liberty as they have in PlayOnLinux 4.
However, we are also going to support a new concept:Installers templates. Installers templates are reusable scripts. For example, we will write one script for all Source games.

A more complex example would look like this:

(Yes some games are natively available on Linux, but it is just for the example ;-))

With this example, the Diablo III script would be "complex", like current scripts, but Half-Life script would look like this:

1

2

3

4

5

6

classHalfLife(WineSteamInstaller):

title ="Half-Life"

prefix ="Prefix"

wineversion ="1.7.34"

steamId =130

packages =["package1", "package2"]

The choice of the base template is made by the scriptor.

New tools

We have integrated a Python console inside the application so that
scriptors can test PlayOnLinux framework (Sorry for the quality):

Performances

Memory consumption

In terms of memory, PlayOnLinux 5 seems to use a little more memory than PlayOnLinux 4.
It is expected because contrary to PlayOnLinux 4, everything us
running in a single multi-threaded process. PlayOnLinux 4 is creating a
lot of processes, making memory measurement very hard, and wasting a lot
of resources.

Interface performances

We've run some benchmark to compare interface performances.
PlayOnLinux 5 is running way faster. In fact, it was impossible to
script a smooth progressbar with PlayOnLinux 4 because the wizard was
responding too slow. To measure the responsiveness of the interface, we
compare the time required to show 1000 messages in a wizard.

Testing

Automated testing is part of the code quality. With the new
application design, we can run automated tests on a daily basis to
detect breaks (in script, or in PlayOnLinux itself). So far, we have
written three integration tests:

1 comment:

I would like not to have - always - a new installation for each software. Wasting disk space.

I mean to be asked to install at the latest wine version (that should work) or make a new "best known wine version for this package", but if it does work with one version installed do not install that version again.

And of course, a way to pre setup each game from the icon link to start it using wineprefix

And even better, add to the installer / launcher interface a menu item to launch desktop (perhaps KDE for MS WOS based) interfaces, that can be launched in window or full screen mode at any selected resolution, for each wine version installed.

Also add FOSS and FREE wine software webpages to download as ninite or allmyapps, Quakelive (it works with firefox) and a Linux directory with all the links to the programs installed able to put them at docks and at menus, some utility to add them to the wine menu (as some does not put themselves there automatically)

And an easy way to move installations to other partitions or directories, allowing easy migrations and use from different installs (I use to have triple boot with Manjaro Ubuntu and some other testing distro letting shared resources at other partitions)