Accéder au contenu.
Menu Sympa

linux-31 - Re: Faire tourner ce script Python

Objet : Discussions sur le logiciel libre

Archives de la liste

Re: Faire tourner ce script Python


Chronologique Discussions  
  • From: Albert ARIBAUD <albert AT aribaud.net>
  • To: peterpan31 AT free.fr, linux-31 AT culte.org
  • Subject: Re: Faire tourner ce script Python
  • Date: Fri, 26 Aug 2022 18:42:47 +0200

Bonsoir,

Je ne dis pas que ça n'a jamais tourné sous Linux, hein, je dis juste
qu'aujourd'hui ça ne tourne pas et ne tournera pas sans d"énormes
efforts :

- pygtk n'est pas fourni sur un Debian Bullseye (ni, en fait, sur aucun
Debian), pas même en paquet source, et je vois mal comment on pourrait
porter un paquetage qui n'existe pas du tout ;

- pygtk est listé sur PyPy ici : https://pypi.org/project/PyGTK/ où il
est indiqué :

- d'une part que ça cible GTK2 (déprécié et en voie de retrait sur
certaines distros depuis 2 ans),

- d'autre part que la page d'accueil de PyGTK est
http://www.pygtk.org/, laquelle redirige (avec une grosse latence) vers
la documentation de https://pygobject.readthedocs.io/en/latest/.

Du coup là aussi, tenter de re-porter le paquetage vers du Linux paraît
un effort titanesque, et l'effort sera bien moindre de porter la
vingtaine de ligne du fichier copcoll.py sur un GTK actuel.

Amicalement,
Albert.

Le vendredi 26 août 2022 à 15:47 +0200, peterpan31 a écrit :
> Bonjour,
>
> Je peux t'assurer que ce script tournait sur une "AccessDVLinux"
> (base
> Debian Jessie) et pas avec Wine...
>
> pierre estrem
>
>
> Le 26/08/2022 à 06:29, Albert ARIBAUD (via linux-31 Mailing List) a
> écrit :
> > Le vendredi 26 août 2022 à 01:19 +0200, peterpan31 a écrit :
> > > Bonjour le Monde,
> > >
> > > On me soumet un script .py qui refuse de s'exécuter sur aciah-
> > > linux
> > > (base Mint 20).
> > >
> > > J'ai une première erreur puis sortie :
> > > /*
> > > Traceback (most recent call last):
> > >     File "./copcoll.py", line 14, in <module>
> > >       import pygtk
> > > ImportError: No module named pygtk
> > > */
> > >
> > > En outre ligne 10 je vois"Dépendances : python-gtk2".
> > > La commande APT ne connaît pas ce paquet python-gtk2.
> > > Faut-il rétroporter ce paquet ?
> > >
> > > Pourriez-vous me dire si ce script se lancerait chez vous (c'est
> > > une
> > > interface gtk type agenda) ?
> > >
> > > Merci
> > > --
> > > pierre estrem
> > Bonjour,
> >
> > Je viens d'essayer en créant un environnement virtuel :
> >
> > $ mkdir copcoll
> > $ cd colcoll
> > (copier copcoll.py dans le dossier courant)
> > $ virtualenv -p python3 venv
> > $ source venv/bin/activate
> > $ python copcoll.py
> > Traceback (most recent call last):
> >    File "[...]/copcoll/copcoll.py", line 13, in <module>
> >      import pygtk
> > ModuleNotFoundError: No module named 'pygtk'
> >
> > Donc j'ai tenté d'installer le module pygtk, non pas via APT (ça
> > changerait l'état du système) mais via pip (ça installe dans
> > l'environnement virtuel sans affecter le reste du système) :
> >
> > > $ pip install pygtk
> > >      ERROR: Command errored out with exit status 1:
> > >       command: [...]/copcoll/venv/bin/python -c 'import sys,
> > > setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-
> > > 2pwq5k1w/pygtk_17821cf501b44dd2b7a6883a2ef30007/setup.py'"'"';
> > > __file__='"'"'/tmp/pip-install-
> > > 2pwq5k1w/pygtk_17821cf501b44dd2b7a6883a2ef30007/setup.py'"'"';f=g
> > > etat
> > > tr(tokenize, '"'"'open'"'"',
> > > open)(__file__);code=f.read().replace('"'"'\r\n'"'"',
> > > '"'"'\n'"'"');f.close();exec(compile(code, __file__,
> > > '"'"'exec'"'"'))' egg_info --egg-base /tmp/pip-pip-egg-info-
> > > suemsdbd
> > >           cwd: /tmp/pip-install-
> > > 2pwq5k1w/pygtk_17821cf501b44dd2b7a6883a2ef30007/
> > >      Complete output (4 lines):
> > >    
> > > *****************************************************************
> > > ***
> > >      * Building PyGTK using distutils is only supported on
> > > windows. *
> > >      * To build PyGTK in a supported way, read the INSTALL
> > > file.    *
> > >    
> > > *****************************************************************
> > > ***
> > >      ----------------------------------------
> > > WARNING: Discarding
> > > https://files.pythonhosted.org/packages/7c/18/fa4f2de77500dd62a314fd845ff6e903ac2ce551164cb421c5750969f799/pygtk-2.24.0.tar.bz2#sha256=cd1c1ea265bd63ff669e92a2d3c2a88eb26bcd9e5363e0f82c896e649f206912
> > > (fromhttps://pypi.org/simple/pygtk/). Command errored out with
> > > exit
> > > status 1: python setup.py egg_info Check the logs for full
> > > command
> > > output.
> > > ERROR: Could not find a version that satisfies the requirement
> > > pygtk
> > > ERROR: No matching distribution found for pygtk
> > Le message est clair : pygtk ne s'installe que sur du Windows (ce
> > qui
> > explique que, vérifications faites, le paquet n'existe pas dans APT
> > non
> > plus).
> >
> > Aujourd'hui, pour faire du GTK avec Python, les dépendances
> > nécessaires
> > sont différentes, par exemple :
> >
> > > $ apt show python3-gtkspellcheck | grep Depends
> > > Depends: python3:any, python3-enchant, python3-gi, gir1.2-gtk-3.0
> > Il faut python3-gi (qui n'existe pas comme paquet pip donc doit
> > s'installer par APT) et gir1.2-gtk-3.0 (idem)
> >
> > Une fois installés (et une fois l'environnement virtuel recréé avec
> > --
> > system-site-packages pour qu'il bénéficie des paquets python du
> > système), le "import pygtk" doit être changé en "import gi", mais
> > ça ne
> > suffira pas, parce qu'alors ConfigParser" n'existe pas ;
> > probablement
> > un autre paquet à installer, de préférence dans un environnement
> > virtuel aussi.
> >
> > Amicalement,
> > Albert.
> >
> >
> > --
> --





Archives gérées par MHonArc 2.6.19+.

Haut de le page