# Faire tourner Mypaint-2.0 sur debian bullseye

**URL:** <https://www.debian-fr.org/t/faire-tourner-mypaint-2-0-sur-debian-bullseye/81555>\
**Category:** Trucs et Astuces\
**Created:** [Mars 20, 2020, 12:17 UTC](https://www.debian-fr.org/t/faire-tourner-mypaint-2-0-sur-debian-bullseye/81555 "2020-03-20T12:17:16Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![oustaou](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/o/b77776/32.png) [@oustaou](https://www.debian-fr.org/u/oustaou)\
**Post date:** [Mars 20, 2020, 12:17 UTC](https://www.debian-fr.org/t/faire-tourner-mypaint-2-0-sur-debian-bullseye/81555/1 "2020-03-20T12:17:16Z")

</div>

Bonjour à tous.

Les soucis d’installation de Mypaint continuent.  
Après la non compatibilité entre mypaint et Gimp-2.10 l’an dernier (résolu en installant soit Gimp-2.8 soit en installant Mypaint ou Gimp en Flatpak), aujourd’hui, il n’y a plus de problème de dépendances, mais en testing (Bullseye), la version Mypaint-2.0 ne se lance pas.  
Si on lance Mypaint en console, on en apprend un peu plus :

```nohighlight
$ mypaint 
INFO: mypaint: Installation layout: conventional POSIX-like structure with prefix '/usr' 
Traceback (most recent call last): 
File "/usr/bin/mypaint", line 294, in <module> 
= get_paths() 
File "/usr/bin/mypaint", line 241, in get_paths 
from lib import fileutils 
File "/usr/lib/mypaint/lib/fileutils.py", line 26, in <module> 
import lib.helpers 
File "/usr/lib/mypaint/lib/helpers.py", line 26, in <module> 
from . import mypaintlib 
File "/usr/lib/mypaint/lib/mypaintlib.py", line 13, in <module>  
from . import _mypaintlib 
ImportError: cannot import name '_mypaintlib' from 'lib' (/usr/lib/mypaint/lib/ __init__.py) 

```

en ouvrant ce fichier “/usr/lib/mypaint/lib/mypaint.py”, on voit qu’il cherche à charger le fichier “\_mypaintlib” dans ce même répertoire.

La solution rapide que j’ai mis en place, consiste :

- soit à copier le fichier “\_mypaintlib.cpython-38-x86\_64-linux-gnu.so” et à le renommer “\_mypaintlib.so”
- soit à créer dans ce même répertoire (/usr/lib/mypaint/lib/" pour ceux qui suivent 😉 ) un lien symbolique nommé “\_mypaintlib.so” , pointant vers le fichier “\_mypaintlib.cpython-38-x86\_64-linux-gnu.so”.

Nouvel essai de lancer Mypaint :

```nohighlight
mypaint 
INFO: mypaint: Installation layout: conventional POSIX-like structure with prefix '/usr' 
INFO: gui.main: No locale setting found, using system locale 
INFO: lib.i18n: POSIX: LANG='fr_FR.utf8' `
INFO: lib.i18n: POSIX: LANGUAGE=None 
Traceback (most recent call last): 
File "/usr/bin/mypaint", line 315, in <module> 
version=version, 
File "/usr/lib/mypaint/gui/main.py", line 225, in main 
run() 
File "/usr/lib/mypaint/gui/main.py", line 186, in run 
from gui import application 
File "/usr/lib/mypaint/gui/application.py", line 97, in <module> 
import gui.profiling 
File "/usr/lib/mypaint/gui/profiling.py", line 22, in <module> 
from distutils.spawn import find_executable 
ModuleNotFoundError: No module named 'distutils.spawn' 

```

Bon on avance , mais tout n’est pas réglé … 🤔  
Mais là, j’ai commencé à sécher 😨

La solution à finalement été trouvée sur Github :  
[https://github.com/platformio/platformio-vscode-ide/issues/907](https://github.com/platformio/platformio-vscode-ide/issues/907)

Il suffit donc d’installer “`python3-distutils`”

Donc après un :

```nohighlight
# apt-get install python3-distutils

```

Il n’y a plus de problème, on peut alors pleinement bénéficier de Mypaint-2.0 sur sa debian préférée. 🤑

---

<div class="post-metadata">

**Author:** ![oustaou](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/o/b77776/32.png) [@oustaou](https://www.debian-fr.org/u/oustaou)\
**Post date:** [Novembre 25, 2020, 11:37 UTC](https://www.debian-fr.org/t/faire-tourner-mypaint-2-0-sur-debian-bullseye/81555/2 "2020-11-25T23:37:21Z")

</div>

**Mise à jour pour la version Mypaint-2.0.1.**

Sur la version **2.0.1** de Mypaint l’astuce notée ci dessus ne fonctionne plus, mais tout n’est pas perdu.  
Après l’installation de Mypaint, l’application ne se lance pas, il faut donc :

1- procéder au renommage du fichier de config comme noté dans mon message initial :

> [@oustaou](#):
>
> La solution rapide que j’ai mis en place, consiste :
> 
> - soit à copier le fichier “\_mypaintlib.cpython-38-x86\_64-linux-gnu.so” et à le renommer “\_mypaintlib.so”
> - soit à créer dans ce même répertoire (/usr/lib/mypaint/lib/" pour ceux qui suivent 😉 ) un lien symbolique nommé “\_mypaintlib.so” , pointant vers le fichier “\_mypaintlib.cpython-38-x86\_64-linux-gnu.so”.

2 - Puis on a alors un nouveau soucis :

```auto
$ mypaint
INFO: mypaint: Installation layout: conventional POSIX-like structure with prefix '/usr'
Traceback (most recent call last):
  File "/usr/bin/mypaint", line 293, in <module>
= get_paths()
  File "/usr/bin/mypaint", line 241, in get_paths
from lib import fileutils
  File "/usr/lib/mypaint/lib/fileutils.py", line 25, in <module>
import lib.helpers
  File "/usr/lib/mypaint/lib/helpers.py", line 25, in <module>
from . import mypaintlib
  File "/usr/lib/mypaint/lib/mypaintlib.py", line 13, in <module>
from . import _mypaintlib
ImportError: /usr/lib/mypaint/lib/_mypaintlib.so: undefined symbol: PyCMethod_New
```

Là encore, il nous manque une librairie, ou une mise à jour.  
En fait, Mypaint en version 2.0.1 nécessite Pyton-3.9 (cf : [I Challenge Thee](https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=975582)) :

> [@](#):
>
> ensure your python3 version is 3.9.0-3 or higher

La version **3.9.0-3** de python n’est disponible que dans **cid** , il faut donc faire du pinning avec la source.liste et installer la dernière version de python.

On peut ensuite lancer **Mypaint**.
