The forum

PlayonLinux breaks with python 3.13

Author Replies
daMajor Tuesday 11 March 2025 at 13:46
daMajorAnonymous

Hello,

my distro opensuse tumbleweed made a Python-switch from 3.11 -> 3.13 so Playonlinux selects this newer version of python.

Unfortunately PlayOnLinux still uses the Pipes -Lib (which was removed in 3.13), look at this:

user@linux-0n99:~> /usr/share/playonlinux/playonlinux
Looking for python3... 3.13.2 - selected
/usr/share/playonlinux/python/mainwindow.py:708: SyntaxWarning: invalid escape sequence '\|'
  self.SupprotedIconExt = "All|*.xpm;*.XPM;*.png;*.PNG;*.ico;*.ICO;*.jpg;*.JPG;*.jpeg;*.JPEG;*.bmp;*.BMP\
Traceback (most recent call last):
  File "/usr/share/playonlinux/python/mainwindow.py", line 39, in <module>
    import lib.lng as lng
  File "/usr/share/playonlinux/python/lib/lng.py", line 6, in <module>
    from . import Variables
  File "/usr/share/playonlinux/python/lib/Variables.py", line 6, in <module>
    import wx, lib.playonlinux as playonlinux
  File "/usr/share/playonlinux/python/lib/playonlinux.py", line 8, in <module>
    import subprocess, shlex, pipes, wx
ModuleNotFoundError: No module named 'pipes'

 

I guess we need a new python 3.13 ready version of PlayOnLinux or there is a possibility to select the older 3.11 version?

daMajor Tuesday 11 March 2025 at 17:15
daMajorAnonymous

I have a temporarily solution.

  1. Open /usr/share/playonlinux/python/lib/playonlinux.py
  2. Remove: pipes, of the import section line ~8
  3. Replace pipes.quote(x) with shlex.quote(x) in the lines ~376 and ~435

Save and start.

promeneur Wednesday 12 March 2025 at 11:23
promeneurAnonymous

Thanks

Another solution

openSUSE Tumbleweed

With Discover install the flatpack container of Playonlinux instead of the rpm.

 

For retrieving your previous settings of Playonlinux

In /home/userid/.var/app/com.playonlinux.PlayOnLinux4/data/

rename PlayOnLinux by PlayOnLinux~

create the link PlayOnLinux -> /home/userid/.PlayOnLinux/

 

to launch an <app> use this command :

/usr/bin/flatpak run com.playonlinux.PlayOnLinux4 --run <app> %F

 

 

Edited by promeneur

promeneur Friday 18 April 2025 at 14:00
promeneurAnonymous

 

I have a temporarily solution.

  1. Open /usr/share/playonlinux/python/lib/playonlinux.py
  2. Remove: pipes, of the import section line ~8
  3. Replace pipes.quote(x) with shlex.quote(x) in the lines ~376 and ~435

Save and start.

 

Edited by promeneur

promeneur Sunday 20 April 2025 at 15:49
promeneurAnonymous

Another solution.

Launch Playonlinux with the following statement :

 

POL_OS=Linux POL_USER_ROOT=/home/<user_id>/.PlayOnLinux/ APPLICATION_TITLE=PlayonLinux POL_PYTHON=python3.11 python3.11 /usr/share/playonlinux/python/mainwindow.py

 

With open§SUSE Tumbleweed two version of python are installed python 3.11 and 3.13.

 

promeneur Sunday 20 April 2025 at 15:58
promeneurAnonymous

Autre solution.

Lancez Playonlinux avec l'instruction suivante :

POL_OS=Linux POL_USER_ROOT=/home/<user_id>/.PlayOnLinux/ APPLICATION_TITLE=PlayonLinux POL_PYTHON=python3.11 python3.11 /usr/share/playonlinux/python/mainwindow.py

 

Avec open§SUSE Tumbleweed deux versions de python sont installées python 3.11 et 3.13.

This site allows content generated by members, and we promptly remove any content that infringes copyright according to our Terms of Service. To report copyright infringement, please send a notice to dmca@playonlinux.com