Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

pip or pipx to install fava? #2210

Answered by yagebu
gety9 asked this question in Q&A
Discussion options

Title, i am pythong newbie. Should i use pip install fava or pipx install fava?

What's better practice and why?

You must be logged in to vote

If you do a user pip install, Fava and its dependencies will be installed in the same Python environment as other packages and there might be problems due to conflicting version requirements with other packages. So that's not an ideal approach.

pipx sets up an isolated environment for just the Fava cli, so that makes sure there are no conflicts and is a good way to try out Fava. However, with pipx you don't have great control over upgrades (of the dependencies of Fava) and it's also not very convenient to install further dependencies for e.g. your importers in that environment.

I personally use and would recommend a separate Python "project", managed by uv (see https://docs.astral.sh/uv/g...

Replies: 1 comment 1 reply

Comment options

If you do a user pip install, Fava and its dependencies will be installed in the same Python environment as other packages and there might be problems due to conflicting version requirements with other packages. So that's not an ideal approach.

pipx sets up an isolated environment for just the Fava cli, so that makes sure there are no conflicts and is a good way to try out Fava. However, with pipx you don't have great control over upgrades (of the dependencies of Fava) and it's also not very convenient to install further dependencies for e.g. your importers in that environment.

I personally use and would recommend a separate Python "project", managed by uv (see https://docs.astral.sh/uv/guides/projects/ for an intro). That's a convenient way to have my ledger and the Python tools (Fava, importers, etc.) in a single folder with exact control over dependency upgrades due to the lockfile and great UX for using further dependencies. The minimal setup steps would be just uv init, then a uv add fava and then you can start Fava with uv run fava (and then run uv lock --upgrade from time to time to get updates).

You must be logged in to vote
1 reply
Comment options

@yagebu thank you!

Answer selected by gety9
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Q&A
Labels
None yet
2 participants

AltStyle によって変換されたページ (->オリジナル) /