When using uv as the pipx backend, cannot install additional packages
Closed this issue · 3 comments
Describe the bug
When installing xonsh
, a user will typically need to additionally install xontribs in the virtual environment. There is a parser error when doing this with mise
To Reproduce
Steps to reproduce the behavior.
mise use -g 'pipx:xonsh[full,uvx_args="--with xontrib-clp,xontrib-dotdot,xontrib-zoxide,xontrib-chatgpt,xontrib-gitinfo,xontrib-sh,xontrib-prompt_starship,xontrib-term-integrations,xontrib-readable-traceback"]'
This errors with the following:
mise use -g 'pipx:xonsh[full,uvx_args="--with xontrib-clp,xontrib-dotdot,xontrib-zoxide,xontrib-chatgpt,xontrib-gitinfo,xontrib-sh,xontrib-prompt_starship"]' -f --verbose
DEBUG ARGS: mise use -g pipx:xonsh[full,uvx_args="--with xontrib-clp,xontrib-dotdot,xontrib-zoxide,xontrib-chatgpt,xontrib-gitinfo,xontrib-sh,xontrib-prompt_starship"] -f --verbose
DEBUG EnvResults
DEBUG config: ~/.config/mise/config.toml
DEBUG install_some_versions: pipx:xonsh@latest
INFO pipx:xonsh@0.19.0 install
INFO pipx:xonsh@0.19.0 uv tool install xonsh==0.19.0
DEBUG EnvResults
DEBUG EnvResults
Error:
0: failed to install pipx:xonsh@0.19.0
1: missing closing quote
Location:
src/backend/pipx.rs:102
Version:
2024.12.14 linux-x64 (33ed8c1 2024-12-19)
NOTE: This works if you manually edit
mise/config.toml
with the line below and do amise up pipx:xonsh
Expected behavior
The above should install the following line in the mise/config.toml
:
[tools]
"pipx:xonsh" = { version = "latest", full = "", uvx_args="--with xontrib-clp,xontrib-dotdot,xontrib-zoxide,xontrib-chatgpt,xontrib-gitinfo,xontrib-sh,xontrib-prompt_starship,xontrib-term-integrations,xontrib-readable-traceback" }
uv = "latest"
mise doctor
output
version: 2024.12.14 linux-x64 (33ed8c1 2024-12-19)
activated: yes
shims_on_path: no
build_info:
Target: x86_64-unknown-linux-gnu
Features: DEFAULT, NATIVE_TLS
Built: Thu, 19 Dec 2024 09:01:44 +0000
Rust Version: rustc 1.83.0 (90b35a623 2024-11-26) (Arch Linux rust 1:1.83.0-1)
Profile: release
shell:
/usr/bin/zsh
zsh 5.9 (x86_64-pc-linux-gnu)
dirs:
cache: ~/.cache/mise
config: ~/.config/mise
data: ~/.local/share/mise
shims: ~/.local/share/mise/shims
state: ~/.local/state/mise
config_files:
~/.config/mise/config.toml
backends:
aqua
asdf
cargo
core
gem
go
npm
pipx
spm
ubi
vfox
plugins:
poetry https://github.com/mise-plugins/mise-poetry.git#daaaab6
toolset:
aqua:astral-sh/uv@0.5.10
core:node@20.18.1
pipx:xonsh@0.19.0
path:
~/.local/share/mise/installs/node/20.18.1/bin
~/.local/share/mise/installs/pipx-xonsh/0.19.0/bin
~/.local/share/mise/installs/uv/0.5.10/uv-x86_64-unknown-linux-musl
~/.local/bin
~/bin
~/go/bin
~/.shell.d/aliases
~/.local/bin
/usr/local/sbin
/usr/local/bin
/usr/bin
/opt/cuda/bin
/opt/cuda/nsight_compute
/opt/cuda/nsight_systems/bin
/var/lib/flatpak/exports/bin
/usr/lib/jvm/default/bin
/usr/bin/site_perl
/usr/bin/vendor_perl
/usr/bin/core_perl
/var/lib/snapd/snap/bin
env_vars:
MISE_SHELL=zsh
settings:
experimental true ~/.config/mise/config.toml
pipx.uvx true ~/.config/mise/config.toml
No problems found
you can't use quotes there, you need to manually edit your config file
I can accept that, this is pretty unusual.
The issue I ran into is when I install it and activate the environment, there's no pip installed in the environment. Is there a way to ensure that it is present in that uv created environment?
I don't know