Linux Adictos Pablinux  

Si tu addon preferido ha dejado de funcionar en Kodi, probablemente sea porque tienes una versión de Python demasiado nueva

Kodi y Python

Hace ya mucho tiempo que Kodi nos está dando más dolores de cabeza que alegrías a los usuarios de Linux. Desde que se subió a Matrix, hay addons que han dejado de funcionar. Algunos se instalan, pero su contenido no muestra nada. En otros, sencillamente provoca un cierre (crash). ¿Qué es lo que está pasando? El problema no es del reproductor, sino de los desarrolladores de complementos y el lenguaje de programación que usan.

Hay algunos addons que dejaron de funcionar por un problema en una versión de Python que estaba entre la 3.10.0 y la 3.10.4, corrigiéndose dicho problema en la v3.10.5. Ese problema ya está corregido, pero otros addons no funcionan porque están preparados para versiones anteriores del lenguaje de programación. ¿Y por qué falla sólo en Linux? Bueno, no estoy seguro de si falla en macOS, pero en Linux está fallando porque Python se instala junto al sistema operativo, y no está integrado en Kodi como lo está en Windows y Android.

Kodi para Windows y Android usan su propia versión de Python

Kodi para Windows y Android tiene integrada su propia versión de Python, y cambia dependiendo de la versión de Kodi que se esté usando. Si deja de funcionar es porque los desarrolladores de addons «camuflan» su código (lo cierran) para evitar que otros les copien, y es el software de camuflaje el que hace que un código sea compatible con sólo una versión de Python. Por lo tanto, si se desarrolla un addon para Python 3.8 y en nuestro Linux va por Linux 3.10.x, Kodi no «entiende» el código camuflado y deja de funcionar. Esto no debería pasar y parece que no pasa sin el camuflaje, pero es comprensible que los desarrolladores prefieran tener su software «cerrado).

¿Y qué podemos hacer? Bueno, la cosa no pinta demasiado bien. Si ha pasado una vez, seguro que volverá a pasar en el futuro, por lo menos si los desarrolladores no nos cuidan un poco a los usuarios de Linux, y ya sabemos que esto no suele ser así. Estos desarrolladores «camuflan» y suben sólo versiones compatibles con Android y Windows, y la versión más reciente que está soportada es Python 3.8. Por lo tanto, una solución es hacer que Kodi use esa versión de Python, algo posible en sistemas operativos basados en Ubuntu.

Para usar estos addons, habría que abrir un terminal y escribir lo siguiente:

sudo apt install software-properties-common
sudo apt update -y && sudo apt upgrade -y
sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt update -y && sudo apt upgrade -y
sudo apt install python3.8*
sudo apt install patchelf
sudo patchelf --replace-needed libpython3.10.so.1.0 libpython3.8.so.1.0 /usr/lib/x86_64-linux-gnu/kodi/kodi.bin

Lo anterior instalará Python 3.8 JUNTO A la versión de Python que ya tenemos, y aplicará un parche para que Kodi use la v3.8 y no la 3.10.x que no sería compatible con algunos addons.

No es lo más elegante…

… y cada uno debe sopesar si le merece la pena aplicar esta solución o no. Yo puedo confirmar que funciona en Ubuntu 22.04, pero no en Manjaro, ya que subieron a 3.10 hace tiempo y la versión 3.8 de AUR da fallo de compilación. También se ha confirmado que funciona en Linux Mint 21, y en el resto de distribuciones dependerá de si, 1, se puede instalar Python 3.8; y 2, se puede instalar patchself.

Por otra parte, hay que tener en cuenta que hacer esto podría romper la compatibilidad con otros addons, pero no es lo más probable. Como hemos mencionado, los desarrolladores se centran, sobre todo, en lo que hay para Android y Windows, por lo que usar una de las versiones de Python que usa Kodi en esos sistemas operativos no debería provocar problemas. Aún así, ahí dejamos la advertencia.

Otra opción, si tenemos espacio en el disco duro y un equipo con los suficientes recursos, es hacer esto mismo, pero en una máquina virtual de Ubuntu. Kodi sí se ejecuta en máquinas virtuales de Linux sin mayores problemas, por lo que es una posibilidad. Tampoco es lo más elegante, pero también funciona.

Fuente: telegraph.

Leave A Comment

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.