Skip to content

feat: add pypa/pipx#39951

Merged
suzuki-shunsuke merged 5 commits into
aquaproj:mainfrom
itochan:feat/pypa/pipx
Aug 10, 2025
Merged

feat: add pypa/pipx#39951
suzuki-shunsuke merged 5 commits into
aquaproj:mainfrom
itochan:feat/pypa/pipx

Conversation

@itochan

@itochan itochan commented Aug 10, 2025

Copy link
Copy Markdown
Contributor

pipx is a tool that helps you install and run Python applications in isolated environments.

Windows is excluded from supported_envs because it requires an exe file to be generated, which is not included in the releases.

Check List

@suzuki-shunsuke suzuki-shunsuke added the enhancement New feature or request label Aug 10, 2025
@suzuki-shunsuke

Copy link
Copy Markdown
Member

Thank you for your contribution!

@suzuki-shunsuke

suzuki-shunsuke commented Aug 10, 2025

Copy link
Copy Markdown
Member

Test

$ pipx --version 
1.7.1

$ pipx install pycowsay
  installed package pycowsay 0.0.0.2, installed using Python 3.13.5
  These apps are now globally available
    - pycowsay
  These manual pages are now globally available
    - man6/pycowsay.6
done! ✨ 🌟 ✨

$ pipx list
venvs are in /Users/shunsukesuzuki/.local/pipx/venvs
apps are exposed on your $PATH at /Users/shunsukesuzuki/.local/bin
manual pages are exposed at /Users/shunsukesuzuki/.local/share/man
   package pycowsay 0.0.0.2, installed using Python 3.13.5
    - pycowsay
    - man6/pycowsay.6

$ ls ~/.local/pipx/venvs/pycowsay
bin  include  lib  pipx_metadata.json  pyvenv.cfg  share

$ pycowsay mooo                  

  ----
< mooo >
  ----
   \   ^__^
    \  (oo)\_______
       (__)\       )\/\
           ||----w |
           ||     ||

$ which pycowsay
/Users/shunsukesuzuki/.local/bin/pycowsay

https://pipx.pypa.io/stable/installation/#installation-options

The default binary location for pipx-installed apps is ~/.local/bin. This can be overridden with the environment variable PIPX_BIN_DIR.

pipx's default virtual environment location is typically ~/.local/share/pipx on Linux/Unix, ~/.local/pipx on MacOS and ~\pipx on Windows.

@suzuki-shunsuke

Copy link
Copy Markdown
Member

Windows

Windows is excluded from supported_envs because it requires an exe file to be generated, which is not included in the releases.

I looked into this a bit.

I tried to install pipx on Windows using aqua, but it didn't work.

# yaml-language-server: $schema=https://raw.githubusercontent.com/aquaproj/aqua/main/json-schema/registry.json
packages:
  - type: github_release
    repo_owner: pypa
    repo_name: pipx
    description: Install and Run Python Applications in Isolated Environments
    version_constraint: "false"
    version_overrides:
      - version_constraint: semver("<= 1.1.0") or Version == "1.3.0"
        no_asset: true
      - version_constraint: "true"
        asset: pipx.pyz
        format: raw
        complete_windows_ext: false
        overrides:
          - goos: windows
            files:
              - name: pipx
                link: pipx.exe
$ pipx --version
time=2025-08-10T14:42:39Z level=fatal msg=aqua failed env=windows/amd64 error=it failed to start the process exe_name=pipx package_name=pypa/pipx package_version=1.7.1 program=aqua program_version=2.53.9

@suzuki-shunsuke suzuki-shunsuke added this to the v4.399.1 milestone Aug 10, 2025
@suzuki-shunsuke suzuki-shunsuke merged commit e71632d into aquaproj:main Aug 10, 2025
17 checks passed
@github-project-automation github-project-automation Bot moved this to Done in main Aug 10, 2025
@itochan itochan deleted the feat/pypa/pipx branch August 10, 2025 19:26
@suzuki-shunsuke

Copy link
Copy Markdown
Member

jdx pushed a commit to jdx/mise that referenced this pull request Aug 11, 2025
I have added pipx to aqua-registry, so I will use it with mise.
aquaproj/aqua-registry#39951
tmeijn pushed a commit to tmeijn/dotfiles that referenced this pull request Aug 12, 2025
This MR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [aquaproj/aqua-registry](https://github.com/aquaproj/aqua-registry) | minor | `v4.398.0` -> `v4.400.0` |

MR created with the help of [el-capitano/tools/renovate-bot](https://gitlab.com/el-capitano/tools/renovate-bot).

**Proposed changes to behavior should be submitted there as MRs.**

---

### Release Notes

<details>
<summary>aquaproj/aqua-registry (aquaproj/aqua-registry)</summary>

### [`v4.400.0`](https://github.com/aquaproj/aqua-registry/releases/tag/v4.400.0)

[Compare Source](aquaproj/aqua-registry@v4.399.0...v4.400.0)

[Issues](https://github.com/aquaproj/aqua-registry/issues?q=is%3Aissue+milestone%3Av4.400.0) | [Merge Requests](https://github.com/aquaproj/aqua-registry/pulls?q=is%3Apr+milestone%3Av4.400.0) | aquaproj/aqua-registry@v4.399.0...v4.400.0

#### 🎉 New Packages

[#&#8203;39951](aquaproj/aqua-registry#39951) [pypa/pipx](https://github.com/pypa/pipx) - Install and Run Python Applications in Isolated Environments [@&#8203;itochan](https://github.com/itochan)

### [`v4.399.0`](https://github.com/aquaproj/aqua-registry/releases/tag/v4.399.0)

[Compare Source](aquaproj/aqua-registry@v4.398.0...v4.399.0)

[Issues](https://github.com/aquaproj/aqua-registry/issues?q=is%3Aissue+milestone%3Av4.399.0) | [Merge Requests](https://github.com/aquaproj/aqua-registry/pulls?q=is%3Apr+milestone%3Av4.399.0) | aquaproj/aqua-registry@v4.398.0...v4.399.0

#### 🎉 New Packages

[#&#8203;39932](aquaproj/aqua-registry#39932) [CQLabs/homebrew-dcm](https://github.com/CQLabs/homebrew-dcm) - Analyze and improve your code quality [@&#8203;itochan](https://github.com/itochan)
[#&#8203;39941](aquaproj/aqua-registry#39941) [takaishi/tfdiff](https://github.com/takaishi/tfdiff): A CLI that shows attribute-level diffs between Terraform modules with clean, diff-like output

#### Security

[#&#8203;39917](aquaproj/aqua-registry#39917) ctron/oidc-cli: GitHub artifact attestations config [@&#8203;scop](https://github.com/scop)

#### Fixes

[#&#8203;39902](aquaproj/aqua-registry#39902) Re-scaffold Owloops/updo

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this MR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this MR, check this box

---

This MR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS41OC4yIiwidXBkYXRlZEluVmVyIjoiNDEuNjEuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiUmVub3ZhdGUgQm90Il19-->
altendky added a commit to altendky/aqua-registry that referenced this pull request Feb 26, 2026
The .pyz (Python zipapp) asset is not directly executable on Windows —
aqua calls CreateProcess which requires a PE binary. This matches how
pypa/pipx handles the same situation (aquaproj#39951).

Broader support for Python tools on Windows is tracked in
aquaproj/aqua#2128.
suzuki-shunsuke pushed a commit that referenced this pull request Feb 26, 2026
* fix: exclude Windows from pre-commit/pre-commit supported_envs

The .pyz (Python zipapp) asset is not directly executable on Windows —
aqua calls CreateProcess which requires a PE binary. This matches how
pypa/pipx handles the same situation (#39951).

Broader support for Python tools on Windows is tracked in
aquaproj/aqua#2128.

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants