Forums

PlayonLinux breaks with python 3.13

Auteur Réponses
daMajor Mardi 11 Mars 2025 à 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 Mardi 11 Mars 2025 à 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 Mercredi 12 Mars 2025 à 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

 

 

Edité par promeneur

promeneur Vendredi 18 Avril 2025 à 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.

 

Edité par promeneur

promeneur Dimanche 20 Avril 2025 à 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 Dimanche 20 Avril 2025 à 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