id = "pip" name = "pip" homepage = "https://pip.pypa.io/en/stable/topics/configuration/" description = "The package installer for Python." icon = "theSVG:python" executables = ["pip", "pip3"] [dotfiles] # https://pip.pypa.io/en/stable/topics/configuration/#location — one per-user # file per platform, all of them equivalent: ~/.config/pip/pip.conf on Unix # (pip goes through appdirs, so $XDG_CONFIG_HOME wins), # ~/Library/Application Support/pip/pip.conf on macOS, %APPDATA%\pip\pip.ini on # Windows. The directory is [appData] on all three; only the file name differs, # so the Windows spelling still needs a line of its own. ~/.pip/pip.conf is the # legacy location, a plain home-directory dotfile. paths = [ "[appData]/pip/pip.conf", "%APPDATA%/pip/pip.ini", "~/.pip/pip.conf", ] # Same page: the http cache is ~/.cache/pip on Unix ($XDG_CACHE_HOME when set), # ~/Library/Caches/pip on macOS and %LOCALAPPDATA%\pip\Cache on Windows — # [cacheHome]. exclude = ["[cacheHome]/pip/"] # Nothing pip writes here is a credential. An index-url *can* carry an # embedded token, but the overwhelming majority are public URLs, and marking # every index-url secret would cost more than it buys — the consumer's own # content scan is the right layer for that one. secret = [] # Every spelling. pip reads whichever exists, so a rule naming only the base # directory leaves cache-dir — an absolute path to this machine's disk — # syncing from a machine using the legacy or the Windows file. pip.ini is the # same file under the name Windows gives it; the sibling check cannot see that # from the name, so it is listed here by hand. # pip picks the default itself, so a line here is the user moving the cache # somewhere of their own choosing — worth keeping to rebuild this machine, not # worth applying to another. [[dotfiles.machine_lines]] file = [ "[appData]/pip/pip.conf", "%APPDATA%/pip/pip.ini", "~/.pip/pip.conf", ] match = { prefix = ["cache-dir"] } scope = "backup" [commands] format = 1 label = "pip" description = "Install packages and inspect the environment. Index, proxy, constraint and build options are left out of the install form because the completion data lacks them." quality = "ai-draft" base = "fig:pip" parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = true, short_bundles = true } [[commands.source]] id = "fig" kind = "completion" url = "https://github.com/withfig/autocomplete/blob/master/src/pip.ts" license = "MIT" [[commands.subcommand]] path = ["install"] label = "Install packages" [[commands.subcommand.source]] id = "fig" kind = "completion" url = "https://github.com/withfig/autocomplete/blob/master/src/pip.ts" license = "MIT" [[commands.subcommand.field]] id = "packages" label = "Packages" type = "string" position = 0 multiple = true sources = ["fig"] [[commands.subcommand.field]] id = "requirement" label = "Requirements file" type = "path" option = ["--requirement", "-r"] path = { kind = "file", role = "input" } sources = ["fig"] [[commands.subcommand.task]] id = "install" label = "Install packages" fields = ["packages", "requirement"] required = ["packages"] [[commands.subcommand.task]] id = "reqs" label = "Install from requirements" fields = ["requirement"] required = ["requirement"] [[commands.subcommand.group]] id = "basic" label = "Basic" fields = ["packages", "requirement"] [[commands.subcommand]] path = ["uninstall"] label = "Uninstall packages" [[commands.subcommand.source]] id = "fig" kind = "completion" url = "https://github.com/withfig/autocomplete/blob/master/src/pip.ts" license = "MIT" [[commands.subcommand.field]] id = "packages" label = "Packages" type = "string" position = 0 multiple = true effect = "delete" sources = ["fig"] [[commands.subcommand.task]] id = "uninstall" label = "Uninstall" fields = ["packages"] required = ["packages"] [[commands.subcommand.group]] id = "basic" label = "Basic" fields = ["packages"] [[commands.subcommand]] path = ["list"] label = "List installed packages" [[commands.subcommand.source]] id = "fig" kind = "completion" url = "https://github.com/withfig/autocomplete/blob/master/src/pip.ts" license = "MIT" [[commands.subcommand.field]] id = "uptodate" label = "Up to date only" type = "boolean" option = ["--uptodate", "-u"] sources = ["fig"] [[commands.subcommand.field]] id = "editable" label = "Editable only" type = "boolean" option = ["--editable", "-e"] sources = ["fig"] [[commands.subcommand.field]] id = "local" label = "Exclude global packages" type = "boolean" option = ["--local", "-l"] sources = ["fig"] [[commands.subcommand.field]] id = "user" label = "User site only" type = "boolean" option = ["--user"] sources = ["fig"] [[commands.subcommand.field]] id = "pre" label = "Include pre-releases" type = "boolean" option = ["--pre"] sources = ["fig"] [[commands.subcommand.field]] id = "not_required" label = "Not required by others" type = "boolean" option = ["--not-required"] sources = ["fig"] [[commands.subcommand.task]] id = "list" label = "List packages" fields = ["uptodate", "editable", "local", "user", "pre", "not_required"] required = [] [[commands.subcommand.group]] id = "basic" label = "Basic" fields = ["uptodate", "editable", "local", "user", "pre"] [[commands.subcommand.group]] id = "advanced" label = "Advanced" fields = ["not_required"] [[commands.subcommand]] path = ["freeze"] label = "Freeze requirements" [[commands.subcommand.source]] id = "fig" kind = "completion" url = "https://github.com/withfig/autocomplete/blob/master/src/pip.ts" license = "MIT" [[commands.subcommand.field]] id = "local" label = "Exclude global packages" type = "boolean" option = ["--local", "-l"] sources = ["fig"] [[commands.subcommand.field]] id = "user" label = "User site only" type = "boolean" option = ["--user"] sources = ["fig"] [[commands.subcommand.field]] id = "all" label = "Include pip and setuptools" type = "boolean" option = ["--all"] sources = ["fig"] [[commands.subcommand.field]] id = "exclude_editable" label = "Exclude editable" type = "boolean" option = ["--exclude-editable"] sources = ["fig"] [[commands.subcommand.task]] id = "freeze" label = "Freeze" fields = ["local", "user", "all", "exclude_editable"] required = [] [[commands.subcommand.group]] id = "basic" label = "Basic" fields = ["local", "user", "all", "exclude_editable"]