Skip to content

Pickley vs pipx

Zoran Simic edited this page Jun 8, 2023 · 6 revisions

Pickley is very similar to pipx, the main differences are:

  • All installed CLIs self-upgrade by default (and self-heal).
  • It is portable (the folder you drop pickley in becomes its base of operation).
  • pickley is designed to be automated for use by other tools, via an optional configuration.
  • It can optionally seed a ~/.config/pip/pip.conf, to automatically configure usage of an internal pypi mirror.
  • It can install python CLIs from git urls
  • "Bundles" can be configured, for example one can configure a bundle called my-team-tools: poetry hatch ruff, and then pickley install bundle:my-team-tools
  • It can package installed CLIs via venvs, but can also deliver a pex package (more packagers could be supported in the future, would love to support nuitka eventually)
  • It can package local folders as well, for example it can package an /apps/my-package for use in docker or on instances, optionally auto-adding symlinks /usr/local/bin/my-cli -> /apps/my-package/bin/my-cli for example.

Quick comparison as of June 2023

Comparison pickley pipx
Self-upgrading wrapper Yes No
Configurable Yes No (except for env vars PIPX_HOME, PIPX_BIN_DIR and PIPX_DEFAULT_PYTHON)
--dryrun Yes No
Test coverage 100% 85%
Lines of code 4k 10k
Dependencies 4 8
Platforms Linux, macOS Linux, macOS, Windows
Initial commit Aug 2018 Oct 2018
First release Aug 2018 Nov 2018
Clone this wiki locally