I’m having a fair share of problems with OpenSuse Tumbleweed and python atm.

Coming from Linux Mint and windows.

Installing python-packages with pip was pretty easy.

But I have trouble understanding how to install the following packages on TumbleWeed:

tkCalendar

yaml for Python(311)

When I try to use pip I get prompted to use zypper.

I am stuck at this point. Do I have to use something different than zypper? What is the correct way here?

Help very much appreciated and thank you in advance!

— Update —

**Thanks everyone for the help! **

I could succesfully create a virtual enviroment in my Visualstudio Code and installed the needed libraries. The next step for me would be to create a executable package.

  • taazA
    link
    fedilink
    English
    arrow-up
    3
    ·
    edit-2
    1 month ago

    Using pip to install packages outside of venv was always a risk, (newer) pip now has this mechanism to really drive the point home that this can break stuff.

    Do I have to do this everytime I start the script via console?

    Yes, one way to get rid of this requirement is to package the script as binary/executable package (add pyproject.toml with some sane defaults and with proper [project.scripts]) and then install the project using pipx - pipx install -e path/to/the/project/, the -e flag stands for editable and is nice to have here as you won’t have to reinstall everytime you change the script.
    What pipx does is that it creates the local virtualenv, installs everything the package declares as needed and adds a special executable script into location like ~/.local/bin/ that first sources the venv and then starts the entry script - keeping everything isolated.

    • James_Ryan@discuss.tchncs.deOP
      link
      fedilink
      English
      arrow-up
      3
      ·
      1 month ago

      Holy shit!

      **Thank you very much! **

      You did help me big time.

      I’m understanding more and was successfull in installing tkcalendar and pyyaml in a virual Enviroment in VisualStudioCode. For now I can use my script.