Skip to content

Conversation

rsalmaso
Copy link
Contributor

Suggest to install the app with uv tool install or without installing via uvx/pipx

@WaYdotNET
Copy link
Owner

Why remove Install with pip ?

@rsalmaso
Copy link
Contributor Author

For recent python versions (don't remember the first one),
if you want to install you need a virtualenv,
otherwise pip will refuse to install (unless forced to)

python -m pip install zen-generator
error: externally-managed-environment

× This environment is externally managed
╰─> To install Python packages system-wide, try apt install
    python3-xyz, where xyz is the package you are trying to
    install.
    
    If you wish to install a non-Debian-packaged Python package,
    create a virtual environment using python3 -m venv path/to/venv.
    Then use path/to/venv/bin/python and path/to/venv/bin/pip. Make
    sure you have python3-full installed.
    
    If you wish to install a non-Debian packaged Python application,
    it may be easiest to use pipx install xyz, which will manage a
    virtual environment for you. Make sure you have pipx installed.
    
    See /usr/share/doc/python3.12/README.venv for more information.

note: If you believe this is a mistake, please contact your Python installation or OS distribution provider. You can override this, at the risk of breaking your Python installation or OS, by passing --break-system-packages.
hint: See PEP 668 for the detailed specification.

Managing a virtualenv is not a terrible task, but if my tool handle for me it is better 😄

Additionally, uninstalling the package with pip will remove only the package itself, not its dependency

$ pip install zen-generator
Collecting zen-generator
  Downloading zen_generator-0.1.6-py3-none-any.whl.metadata (9.1 kB)
Collecting pyyaml>=6.0.2 (from zen-generator)
  Using cached PyYAML-6.0.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (2.1 kB)
Collecting ruff>=0.9.9 (from zen-generator)
  Downloading ruff-0.9.10-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (25 kB)
Collecting typer>=0.15.2 (from zen-generator)
  Downloading typer-0.15.2-py3-none-any.whl.metadata (15 kB)
Collecting yamllint>=1.35.1 (from zen-generator)
  Downloading yamllint-1.36.0-py3-none-any.whl.metadata (4.2 kB)
Collecting click>=8.0.0 (from typer>=0.15.2->zen-generator)
  Using cached click-8.1.8-py3-none-any.whl.metadata (2.3 kB)
Collecting typing-extensions>=3.7.4.3 (from typer>=0.15.2->zen-generator)
  Using cached typing_extensions-4.12.2-py3-none-any.whl.metadata (3.0 kB)
Collecting shellingham>=1.3.0 (from typer>=0.15.2->zen-generator)
  Using cached shellingham-1.5.4-py2.py3-none-any.whl.metadata (3.5 kB)
Collecting rich>=10.11.0 (from typer>=0.15.2->zen-generator)
  Using cached rich-13.9.4-py3-none-any.whl.metadata (18 kB)
Collecting pathspec>=0.5.3 (from yamllint>=1.35.1->zen-generator)
  Using cached pathspec-0.12.1-py3-none-any.whl.metadata (21 kB)
Collecting markdown-it-py>=2.2.0 (from rich>=10.11.0->typer>=0.15.2->zen-generator)
  Using cached markdown_it_py-3.0.0-py3-none-any.whl.metadata (6.9 kB)
Collecting pygments<3.0.0,>=2.13.0 (from rich>=10.11.0->typer>=0.15.2->zen-generator)
  Using cached pygments-2.19.1-py3-none-any.whl.metadata (2.5 kB)
Collecting mdurl~=0.1 (from markdown-it-py>=2.2.0->rich>=10.11.0->typer>=0.15.2->zen-generator)
  Using cached mdurl-0.1.2-py3-none-any.whl.metadata (1.6 kB)
Downloading zen_generator-0.1.6-py3-none-any.whl (19 kB)
Using cached PyYAML-6.0.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (767 kB)
Downloading ruff-0.9.10-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (11.3 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 11.3/11.3 MB 24.1 MB/s eta 0:00:00
Downloading typer-0.15.2-py3-none-any.whl (45 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 45.1/45.1 kB 2.0 MB/s eta 0:00:00
Downloading yamllint-1.36.0-py3-none-any.whl (66 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 66.8/66.8 kB 769.2 kB/s eta 0:00:00
Using cached click-8.1.8-py3-none-any.whl (98 kB)
Using cached pathspec-0.12.1-py3-none-any.whl (31 kB)
Using cached rich-13.9.4-py3-none-any.whl (242 kB)
Using cached shellingham-1.5.4-py2.py3-none-any.whl (9.8 kB)
Using cached typing_extensions-4.12.2-py3-none-any.whl (37 kB)
Using cached markdown_it_py-3.0.0-py3-none-any.whl (87 kB)
Using cached pygments-2.19.1-py3-none-any.whl (1.2 MB)
Using cached mdurl-0.1.2-py3-none-any.whl (10.0 kB)
Installing collected packages: typing-extensions, shellingham, ruff, pyyaml, pygments, pathspec, mdurl, click, yamllint, markdown-it-py, rich, typer, zen-generator
Successfully installed click-8.1.8 markdown-it-py-3.0.0 mdurl-0.1.2 pathspec-0.12.1 pygments-2.19.1 pyyaml-6.0.2 rich-13.9.4 ruff-0.9.10 shellingham-1.5.4 typer-0.15.2 typing-extensions-4.12.2 yamllint-1.36.0 zen-generator-0.1.6

$ pip uninstall zen-generator
Found existing installation: zen-generator 0.1.6
Uninstalling zen-generator-0.1.6:
  Would remove:
    bin/zen-generator
    lib/python3.12/site-packages/zen_generator-0.1.6.dist-info/*
    lib/python3.12/site-packages/zen_generator/*

With uv tool => uv tool uninstall zen-generator
With pipx => pipx uninstall zen-generator
With uvx => do nothing 😸

@WaYdotNET WaYdotNET merged commit 69bfcd7 into WaYdotNET:main Mar 12, 2025
0 of 2 checks passed
@rsalmaso rsalmaso deleted the use-with-uv branch March 12, 2025 20:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants