PDM plugin that allows additional directories listed in pyproject.toml to be added to environment PATH
Project description
pdm-bin-dir
pdm-bin-dir is a PDM plugin that automatically prepends additional project directories to PATH when running commands via PDM. This lets you place helper scripts alongside your project and run them as plain commands — no prefix or activation needed.
Requirements
- Python 3.10 or later
- PDM 2.0 or later
Installation
Install the plugin into PDM's own environment:
pdm self add pdm-bin-dir
Usage
The plugin is opt-in per project: it has no effect unless [tool.pdm.plugin.bin-dir] is present in the project's pyproject.toml. Once configured, the listed directories are prepended to PATH before every pdm run … invocation.
Configuration
Add to your project's pyproject.toml:
[tool.pdm.plugin.bin-dir]
dirs = ["bin", "scripts"]
Paths are relative to the project root. Absolute paths are also accepted. The default is an empty list (no directories added).
pdm bin-dir command
The plugin registers a bin-dir sub-command for inspecting and changing the configuration:
# Show current configured directories (JSON array)
pdm bin-dir show
# Replace the list
pdm bin-dir set bin scripts
# Append to the list (duplicates are silently skipped)
pdm bin-dir add tools
Changes made via set / add are written back to pyproject.toml.
License
MIT. See LICENSE.
For development and release workflow documentation, see CONTRIBUTING.md.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pdm_bin_dir-1.0.7.tar.gz.
File metadata
- Download URL: pdm_bin_dir-1.0.7.tar.gz
- Upload date:
- Size: 10.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b9627d46f5e80d91d73f635f03297c953144d4b03d2dcb006006a1c96c46c813
|
|
| MD5 |
a7ad07b5c1edbdb0dff51d2b30cec5e5
|
|
| BLAKE2b-256 |
35f9b2d9cd76f5add14794c261ef28344c0dfa5b823e31aa048d4412d38d6b8c
|
Provenance
The following attestation bundles were made for pdm_bin_dir-1.0.7.tar.gz:
Publisher:
publish.yml on mckelvie-org/pdm-bin-dir
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pdm_bin_dir-1.0.7.tar.gz -
Subject digest:
b9627d46f5e80d91d73f635f03297c953144d4b03d2dcb006006a1c96c46c813 - Sigstore transparency entry: 1625084114
- Sigstore integration time:
-
Permalink:
mckelvie-org/pdm-bin-dir@5190a00d108fdee6f5a813f7d743cfd7fafe070e -
Branch / Tag:
refs/heads/prod - Owner: https://github.com/mckelvie-org
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@5190a00d108fdee6f5a813f7d743cfd7fafe070e -
Trigger Event:
push
-
Statement type:
File details
Details for the file pdm_bin_dir-1.0.7-py3-none-any.whl.
File metadata
- Download URL: pdm_bin_dir-1.0.7-py3-none-any.whl
- Upload date:
- Size: 9.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
342589b787a78059baf2cec1df23897c661b3c11b6760e5bce03e174ea4d3755
|
|
| MD5 |
79f8bad1b4e660b5988c984be0eddbac
|
|
| BLAKE2b-256 |
c15bad68e92c8778479144a9ce22f2b448d7a3bba138f842ce6d7fbb0b2d405f
|
Provenance
The following attestation bundles were made for pdm_bin_dir-1.0.7-py3-none-any.whl:
Publisher:
publish.yml on mckelvie-org/pdm-bin-dir
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pdm_bin_dir-1.0.7-py3-none-any.whl -
Subject digest:
342589b787a78059baf2cec1df23897c661b3c11b6760e5bce03e174ea4d3755 - Sigstore transparency entry: 1625084149
- Sigstore integration time:
-
Permalink:
mckelvie-org/pdm-bin-dir@5190a00d108fdee6f5a813f7d743cfd7fafe070e -
Branch / Tag:
refs/heads/prod - Owner: https://github.com/mckelvie-org
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@5190a00d108fdee6f5a813f7d743cfd7fafe070e -
Trigger Event:
push
-
Statement type: