Development tools loader
Project description
Development Tools Loader
A CLI tool for automated downloading of development tools:
- VS Code installers and extensions (
.vsixfiles). - Python installers and pip packages;
The tool ensures version compatibility, handles dependencies, and supports repeatable configurations via JSON.
Key Features
- Version control: Ensures VS Code extension versions match the target VS Code engine version.
- Package bundles: Supports downloading multiple packages/extensions in a single config.
- Dependency handling: Automatically resolves and downloads dependencies for VS Code extensions.
- Resilient downloads: Automatically retries on connection loss.
- Repeatable setups: JSON-based configuration enables reproducible environment setups.
- Flexible versioning: Supports
"latest"for extensions and packages.
Installation
pip install dev-tools-loader
Running
Once installed, you can run the tool from the command line using the JSON configuration file.
dev_tools_loader -j path/to/config.json
Command‑Line Options
-j,--json-path<json_config_path>(required) Specifies the path to the JSON configuration file that defines download targets.-o,--output-path<output_dir>Sets the output directory where downloaded files will be saved.-c,--cleanIf specified, deletes files in the target output directory before starting the download process.-t,--templateCreate JSON config template (json-path required).-h,--helpDisplays the help message with a summary of all available options and exits.--versionPrints the current version of thedev-tools-loaderpackage and exits.
Example Config
{
"version": "0.1.0",
"targets": [
{
"type": "python",
"platform": "win_amd64",
"version": "3.12.0",
"installer": "load",
"packages": [
{
"name": "compiledb",
"version": "0.10.6"
},
{
"name": "requests",
"version": "latest"
}
]
},
{
"type": "vscode",
"platform": "win32-x64",
"version": "1.96.0",
"installer": "load",
"extensions": [
{
"uid": "ms-vscode.cpptools",
"version": "1.28.0"
},
{
"uid": "ms-python.python",
"version": "latest"
}
]
}
]
}
Configuration Fields
version(str): Schema version.targets(list): List of download targets. Each target has:type(str):"python"or"vscode".platform(str): Target platform (see supported platforms below).version(str): Version of the tool.installer(str):"load"to download installer or"skip".packages(list, Python-only): List of pip packages to download.name(str): Package name.version(str): Package version ("latest"supported).
extensions(list, VS Code-only): List of VS Code extensions to download.uid(str): Extension ID (e.g.,"ms-vscode.cpptools").version(str): Extension version ("latest"supported).
Supported Platforms Python
win32win_amd64win_arm64manylinux1_x86_64manylinux2010_x86_64manylinux2014_x86_64manylinux1_i686manylinux2010_i686manylinux2014_i686manylinux2014_aarch64manylinux2014_armv7lmacosx_10_9_x86_64macosx_11_0_arm64
Supported Platforms VS Code
win32-x64win32-arm64linux-x64linux-arm64linux-armhfalpine-x64alpine-arm64darwin-x64darwin-arm64
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
dev_tools_loader-0.3.0.tar.gz
(10.9 kB
view details)
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 dev_tools_loader-0.3.0.tar.gz.
File metadata
- Download URL: dev_tools_loader-0.3.0.tar.gz
- Upload date:
- Size: 10.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c51d20a76ba3657f2c253ed465610b01bada718e879703d44dcd7430ef13ea08
|
|
| MD5 |
f558ebf170c80cebe7c2d7b21cd16e08
|
|
| BLAKE2b-256 |
450a48ee88178b8d8dbddf7196d94a1bb5496383363c407d9c9fe06934a27f92
|
File details
Details for the file dev_tools_loader-0.3.0-py3-none-any.whl.
File metadata
- Download URL: dev_tools_loader-0.3.0-py3-none-any.whl
- Upload date:
- Size: 9.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d0c3f8caf6dfb32cef01f776db76329c54d7f13f0135e07e221deac58615508a
|
|
| MD5 |
49fdf073154a82d44a7b7aca8b930137
|
|
| BLAKE2b-256 |
6ea766c7f7fd46b2face20d19dcd3e1c85444835474ccbc2312fa3f6cb6a318d
|