logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#1 06-10-2024 11:12:01

dezix
Membre
Distrib. : Debian stable
Noyau : Linux amd64 (stable)
(G)UI : XFCE4
Inscription : 19-02-2018

[Python - Sécurité] Usage de pip sous Debian

Bonjour,

je débute l'apprentissage de Python
et je me rends déjà compte que l'usage du gestionnaire de paquet pip fait partie des quasi-incontournables,
si on veut utiliser le code déjà publié par la communauté.

Ceux qui me lisent régulièrement auront peut-être remarqués
que j'évite généralement d'installer des programmes ne provenant pas directement des dépôts Debian,
je pense que vous voyez où je vais ....

Comment gérer en (con)science ce qu'on "pêche" avec pip ?

Merci.

Hors ligne

#2 06-10-2024 11:41:14

agp91
Membre
Distrib. : GNU Debian stable
(G)UI : xfce
Inscription : 12-02-2023

Re : [Python - Sécurité] Usage de pip sous Debian

dezix a écrit :

Comment gérer en (con)science ce qu'on "pêche" avec pip ?

En lisant le code source tongue
out.gif


La liberté est gratuite et accessible à tous. Sinon ça n'en est pas.

Hors ligne

#3 06-10-2024 12:18:35

dezix
Membre
Distrib. : Debian stable
Noyau : Linux amd64 (stable)
(G)UI : XFCE4
Inscription : 19-02-2018

Re : [Python - Sécurité] Usage de pip sous Debian

agp91 a écrit :

En lisant le code source



Effectivement.... mais ce n'est pas (pour moi) pour maintenant sad

Hors ligne

#4 06-10-2024 12:46:15

Croutons
Membre
Distrib. : Debian12
Noyau : Linux 6.1.0-13-amd64
(G)UI : Fluxbox(NakeDeb)
Inscription : 16-12-2016

Re : [Python - Sécurité] Usage de pip sous Debian

hello tu as un exemple en tete, de chose que tu as chargé avec pip?

-->les cahiers du debutant<--      WikiDF-->Découvrir les principales commandes Linux<-- 
L' expérience, c'est le nom que chacun donne à ses erreurs. Oscar Wilde

En ligne

#5 06-10-2024 13:39:25

dezix
Membre
Distrib. : Debian stable
Noyau : Linux amd64 (stable)
(G)UI : XFCE4
Inscription : 19-02-2018

Re : [Python - Sécurité] Usage de pip sous Debian

Non, pas déjà, je n'en suis qu'au "hors d'œuvre" :


$ pip install ipython
$ pip install jupyter
 



... je tente de me poser les bonnes questions dès le départ, plutôt que devoir corriger de mauvaises habitudes face aux difficultés.    scratchhead.gif

Dernière modification par dezix (06-10-2024 13:39:56)

Hors ligne

#6 06-10-2024 13:45:48

dezix
Membre
Distrib. : Debian stable
Noyau : Linux amd64 (stable)
(G)UI : XFCE4
Inscription : 19-02-2018

Re : [Python - Sécurité] Usage de pip sous Debian

D'ailleurs je me pose aussi la question suivante :

Vaut-il mieux installer depuis Debian ce qui est disponible  (pex: jupyter ;  ipython3 )
ou
installer tous les compléments à python3 via pip ???

Hors ligne

#7 06-10-2024 14:10:42

Tawal
Membre
Distrib. : Debian Stable à jour
Noyau : amd64
(G)UI : Xfce
Inscription : 25-02-2021

Re : [Python - Sécurité] Usage de pip sous Debian

Hello,

Je débute aussi avec Python.
Mais j'ai compris qu'avant de chercher à installer un module python via pip, il valait mieux chercher si un paquet dans les dépôts officiels existe.
Si vraiment c'est un module hors dépôt alors :

  • Il faut créer un environnement virtuel pour Python.

  • Activer cet environnement virtuel.

  • Utiliser pip à l'intérieur ce cet environnement virtuel pour installer les modules externes.



Un environnement virtuel n'est qu'un répertoire quelque part créé de la sorte (1 seule fois pour 1 projet) :

python3 -m venv /chemin/du/répertoire/environnement/virtuel



Activer l'environnement virtuel :

source /chemin/du/répertoire/environnement/virtuel/bin/activate



Utiliser pip pour installer des modules externes au système ou
Lancer les scripts ayant besoin des modules externes au système pour fonctionner et installés dans cet environnement virtuel.

Désactiver l'environnement virtuel :

deactivate


Comme la science n'est pas infuse, elle se diffuse.
Useless Use of Cat Award
Filenames and Pathnames in Shell: How to do it Correctly
À chaque problème sa solution, à chaque solution son moyen, si pas de moyen, toujours le problème !

Hors ligne

#8 06-10-2024 14:20:55

dezix
Membre
Distrib. : Debian stable
Noyau : Linux amd64 (stable)
(G)UI : XFCE4
Inscription : 19-02-2018

Re : [Python - Sécurité] Usage de pip sous Debian

Ô! Collègue !

J'ai eu (ça fait longtemps) testé ça : l'environnement virtuel de python,
je crois même me souvenir que pip (ou peut-être d'autres alternatives que j'ignore encore) est nécessaire pour "peupler" cet env avec des modules....)
et que bien sûr ce qui est installé dans un tel environnement, se trouve isolé du reste du système hôte.

En tous cas, merci pour le rappel yes.gif

Hors ligne

#9 06-10-2024 14:37:53

vv222
Administrateur
Distrib. : Debian Sid
(G)UI : sway
Inscription : 18-11-2013
Site Web

Re : [Python - Sécurité] Usage de pip sous Debian

dezix a écrit :

Comment gérer en (con)science ce qu'on "pêche" avec pip ?


Juste pas. Jamais. Je me doute que beaucoup ne seront pas d’accord, mais pour ma part je refuse de multiplier les gestionnaires de paquets sur mon système.

Quand je dois bosser avec du code Python je me retrouve face à un de ces trois cas, et dans chacun j’ai une approche différente :

  • Si des dépendances du code Python sont fournies par Debian dans les versions attendues, j‘installe ces dépendances depuis les dépôts Debian ;

  • Si des dépendances du code Python sont fournies par Debian dans d’autres versions que celle attendues, j‘installe ces dépendances depuis les dépôts Debian et je modifie le code Python au besoin pour le faire fonctionner avec ces versions ;

  • Si des dépendances du code Python ne sont pas fournies par Debian, j’utilise la commande py2dsp (fournie par le paquet pypi2deb) pour générer des paquets .deb pour les dépendances manquantes et ce sont ces paquets que j’installe.


Jouer sous Debian ? Facile !

Ceterum censeo Barum esse delendam

Hors ligne

#10 06-10-2024 15:25:10

dezix
Membre
Distrib. : Debian stable
Noyau : Linux amd64 (stable)
(G)UI : XFCE4
Inscription : 19-02-2018

Re : [Python - Sécurité] Usage de pip sous Debian

@vv222  yes.gif

Salut!

Ta posture tient la route au niveau de la bonne tenue de  Debian ;
j'imagine que le cas N°2 peut nécessiter (parfois) pas mal de travail et de compétences suivant la complexité...

Dernière modification par dezix (06-10-2024 15:26:03)

Hors ligne

#11 06-10-2024 15:45:58

vv222
Administrateur
Distrib. : Debian Sid
(G)UI : sway
Inscription : 18-11-2013
Site Web

Re : [Python - Sécurité] Usage de pip sous Debian

dezix a écrit :

j'imagine que le cas N°2 peut nécessiter (parfois) pas mal de travail et de compétences suivant la complexité...


Ça dépend pas mal du sérieux avec lequel sont développés le programme Python et ses dépendances.

Si les devs ont fait leur boulot correctement, les incompatibilités entre les versions sont documentées et donc c’est relativement facile.


Jouer sous Debian ? Facile !

Ceterum censeo Barum esse delendam

Hors ligne

#12 06-10-2024 16:13:17

dezix
Membre
Distrib. : Debian stable
Noyau : Linux amd64 (stable)
(G)UI : XFCE4
Inscription : 19-02-2018

Re : [Python - Sécurité] Usage de pip sous Debian

Dans l'autre sens => pour la distribution du programme cette posture complique un peu la donne,
nécessité de proposer un dépôt dédié pour la récupération des paquets .deb hors distro pour le cas N°3
et dans les cas N°2 et 3 d'autres complications pour l'installation sur d'autres OS non-Debian ???

Alors qu'en restant dans l'écosystème "pip" le programme serait simplement distribué empaqueté avec un fichier de dépendances
et installable avec simplement : pip install mon_programme
... ou je rêve ?

Dernière modification par dezix (06-10-2024 16:15:26)

Hors ligne

#13 06-10-2024 19:22:10

vv222
Administrateur
Distrib. : Debian Sid
(G)UI : sway
Inscription : 18-11-2013
Site Web

Re : [Python - Sécurité] Usage de pip sous Debian

dezix a écrit :

Dans l'autre sens => pour la distribution du programme cette posture complique un peu la donne,
nécessité de proposer un dépôt dédié pour la récupération des paquets .deb hors distro pour le cas N°3


Pour moi l’approche recommandée serait plutôt d’empaqueter pour Debian le programme lui-même et les dépendances qui manquent aux dépôts. Pas via un dépôt tiers, mais directement au sein de Debian.

dezix a écrit :

Alors qu'en restant dans l'écosystème "pip" le programme serait simplement distribué empaqueté avec un fichier de dépendances
et installable avec simplement : pip install mon_programme


Installable plus facilement par ceux qui utilisent pip… mais pas installable par ceux qui utilisent apt.

À voir donc si c’est un compromis qui te convient.


Jouer sous Debian ? Facile !

Ceterum censeo Barum esse delendam

Hors ligne

#14 06-10-2024 19:48:34

dezix
Membre
Distrib. : Debian stable
Noyau : Linux amd64 (stable)
(G)UI : XFCE4
Inscription : 19-02-2018

Re : [Python - Sécurité] Usage de pip sous Debian

vv222 a écrit :

Pas via un dépôt tiers, mais directement au sein de Debian.


cela sous-entend de remplir des conditions qui seront rarement réunies pour des petits programmes de bricoleur du dimanche.

Mais ta stratégie n'en demeure pas moins intéressante en local/interne pour l'utilisation en tant que "consommateur" sous debian,
du reste je te suis reconnaissant d'avoir présenté la question sous cet angle nouveau pour moi.


vv222 a écrit :

À voir donc si c’est un compromis qui te convient.


Je n'en suis clairement pas là... je me cultive simplement    coyotus.png

Hors ligne

#15 06-10-2024 20:12:08

Tawal
Membre
Distrib. : Debian Stable à jour
Noyau : amd64
(G)UI : Xfce
Inscription : 25-02-2021

Re : [Python - Sécurité] Usage de pip sous Debian

Je reprends le cours de cette discussion.
Si je comprends bien il serait préférable d'empaqueter au format Debian un module Python externe plutôt que de l'installer dans un environnement virtuel Python.

Pour l'instant, au vu de ma compréhension, je reste sur un environnement virtuel pour un projet.
Car la méthode que propose vv222 implique que ces modules externes sont directement accessibles et intégrés à la version de Python en cours.
Arrêtez moi si je me trompe, mais que se passe-t-il en cas de montée en version de Python ?

Pourquoi, je reste sur un "venv" :
Parce que dans mon cas d'étude sur un automate cellulaire réputé, je ne vois pas pourquoi des modules spécifiques à cet automate seraient utiles pour l'ensemble du système.

Bref, j'ai encore besoin de clarification.

Comme la science n'est pas infuse, elle se diffuse.
Useless Use of Cat Award
Filenames and Pathnames in Shell: How to do it Correctly
À chaque problème sa solution, à chaque solution son moyen, si pas de moyen, toujours le problème !

Hors ligne

#16 06-10-2024 21:22:40

Philou92
Adhérent(e)
Lieu : Hauts de Seine
Distrib. : Debian bookworm
Noyau : Linux 6.1.0-21-amd64
(G)UI : LightDM et Xfce4.18
Inscription : 29-04-2015

Re : [Python - Sécurité] Usage de pip sous Debian

Tawal a écrit :


Pourquoi, je reste sur un "venv" :
Parce que dans mon cas d'étude sur un automate cellulaire réputé, je ne vois pas pourquoi des modules spécifiques à cet automate seraient utiles pour l'ensemble du système.


Sans passer par un « venv » tu pourrais très bien installer ton paquet python uniquement dans ton espace utilisateur avec la commande :

pip install <paquet> --user


https://pip.pypa.io/en/stable/cli/pip_install/


Tousse antique Ovide !

Hors ligne

#17 06-10-2024 22:48:24

Philou92
Adhérent(e)
Lieu : Hauts de Seine
Distrib. : Debian bookworm
Noyau : Linux 6.1.0-21-amd64
(G)UI : LightDM et Xfce4.18
Inscription : 29-04-2015

Re : [Python - Sécurité] Usage de pip sous Debian

Je corrige.  Il y a une nouveauté dans la release debian 12 :

5.2.2. Interpréteurs Python marqués comme gérés en externe

Les paquets de l'interpréteur python3 fournis par Debian (python3.11 et pypy3) sont désormais marqués comme ayant une gestion externe, suivant la PEP-668. La version de python3-pip fournie par Debian suit cela et refusera d'installer manuellement des paquets sur les interpréteurs Python de Debian, à moins que l'option --break-system-packages ne soit spécifiée.

Si vous avez besoin d'installer une application Python (ou une version) qui n'est pas empaquetée par Debian, nous vous recommandons de l'installer avec pipx (présent dans le paquet Debian pipx). pipx configurera un environnement isolé des autres application et des modules Python du système, et installe l'application et ses dépendances à l'intérieur.

Si vous avez besoin d'installer un module de bibliothèque (ou une version) qui n'est pas empaqueté dans Debian, nous vous recommandons de l'installer dans un environnement virtuel quand c'est possible. Vous pouvez créer des environnements virtuels avec le module stdlib Python venv (du paquet Debian python3-venv) ou avec l'outil Python tierce virtualenv (du paquet Debian virtualenv). Par exemple, plutôt que d'exécuter pip install --user toto, exécutez  mkdir -p ~/.venvs && python3 -m venv ~/.venvs/foo && ~/.venvs/toto/bin/python -m pip install toto pour l'installer dans un environnement virtuel dédié.

Consultez /usr/share/doc/python3.11/README.venv pour plus de détails.



https://www.debian.org/releases/stable/ … n3-pep-668

Dernière modification par Philou92 (06-10-2024 22:49:23)


Tousse antique Ovide !

Hors ligne

#18 07-10-2024 01:37:29

vv222
Administrateur
Distrib. : Debian Sid
(G)UI : sway
Inscription : 18-11-2013
Site Web

Re : [Python - Sécurité] Usage de pip sous Debian

dezix a écrit :

cela sous-entend de remplir des conditions qui seront rarement réunies pour des petits programmes de bricoleur du dimanche.


La seule et unique condition pour ça est qu’un mainteneur accepte de s’en occuper. Ce mainteneur pouvant être toi wink

Si on regarde ici par exemple, on peut voir que mon dernier paquet introduit chez Debian a en tout et pour tout un seul et unique utilisateur (moi-même) : https://qa.debian.org/popcon.php?packag … -adventure
Bon, je triche un peu vu qu’il est arrivé dans les dépôts aujourd’hui-même. Mais si on regarde celui-ci que je maintiens aussi et qui est dans les dépôts depuis 2018, il n’est installé que sur 0,03% des machines faisant tourner Debian : https://qa.debian.org/popcon.php?package=play.it

En bref, pas besoin qu’un logiciel soit utilisé par des dizaines de milliers de personnes pour qu’il soit intégré à Debian.


Jouer sous Debian ? Facile !

Ceterum censeo Barum esse delendam

Hors ligne

#19 12-10-2024 07:41:52

MPython Alaplancha
Membre
Distrib. : Debian12 Mate
Inscription : 17-01-2024

Re : [Python - Sécurité] Usage de pip sous Debian

Bonjour,

En termes de sécurité, l'avantage des langages interprétés est qu'on peut lire le code, et tant qu'on n'utilise pas pip avec sudo, les risques sont plutôt limités. Personnellement, je vérifie toujours les dépendances d'un projet avant de les installer. Si un projet m'intéresse, je regarde sur PyPI s'il est maintenu, le nombre de contributeurs, et je lis le fichier README.md pour me faire une idée de l'état du projet.

Sinon, pip permet de 'figer' les versions des dépendances dans un environnement virtuel (venv), ce qui garantit que vous utilisez toujours les mêmes versions, quel que soit l'endroit où le projet est déployé. En plus, vous pouvez facilement partager cet environnement en exportant un fichier de dépendances (requirements.txt), et pip fonctionne sur plusieurs plateformes. (Python est inclusif, python aime tout le monde ?)

J'utilise apt install python3-paquet dans de rares cas, par exemple quand je veux rendre un IDE accessible globalement depuis le terminal."

Acheter plus à jeter plus!
Mes amusements avec python kivy glsl: https://www.youtube.com/@MPython_Alaplancha

Hors ligne

Pied de page des forums