Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .github/skills/change-devcontainer-feature/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,8 @@ Apply the changes described in the issue. Common change types:
- **Update tests** — fix or improve `test.sh` assertions
- **Update helper functions** — copy latest versions from https://github.com/devcontainer-community/shell-snippets

When editing `devcontainer-feature.json`, ensure `"installsAfter"` includes `"ghcr.io/devcontainer-community/features/ca-certificates:latest"` as the first entry. Add it if missing.

When modifying `install.sh`:
- Keep helper functions verbatim from the shell-snippets repo
- Only customize the feature-specific parts (repository, binary name, URL template, architecture mappings)
Expand Down
7 changes: 5 additions & 2 deletions .github/skills/create-devcontainer-feature/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -85,15 +85,18 @@ Create these files:
],
"description": "Version of \"<binary-name>\" to install."
}
}
},
"installsAfter": [
"ghcr.io/devcontainer-community/features/ca-certificates:latest"
]
}
```

Notes:
- `name` uses the owner/project format with a slash (e.g., `"schpet/linear-cli"`, `"github.com/cli"`, `"cloudflare.com/warp-cli"`). For plain-name features (e.g., `bat`, `jq`), `name` is just the tool name.
- `id` is derived from `name` by replacing `/` with `-` (e.g., `"schpet/linear-cli"` → `"schpet-linear-cli"`). It MUST match the directory name exactly.
- `version` starts at `"1.0.0"` for new features
- Add `"installsAfter"` only if there is a real dependency on another feature
- Always include `"installsAfter": ["ghcr.io/devcontainer-community/features/ca-certificates:latest"]` so CA certificates are available before the feature runs

### 4b. `src/<FEATURE_ID>/install.sh`

Expand Down
180 changes: 90 additions & 90 deletions README.md

Large diffs are not rendered by default.

7 changes: 5 additions & 2 deletions src/add-script/devcontainer-feature.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "add-script",
"id": "add-script",
"version": "1.1.0",
"version": "1.1.1",
"description": "Add a script from a URL or inline text to /usr/local/bin during devcontainer build",
"documentationURL": "https://github.com/devcontainer-community/devcontainer-features/tree/main/src/add-script",
"options": {
Expand All @@ -20,5 +20,8 @@
"default": "",
"description": "Inline script text to add."
}
}
},
"installsAfter": [
"ghcr.io/devcontainer-community/features/ca-certificates:latest"
]
}
7 changes: 5 additions & 2 deletions src/alexpasmantier-television/devcontainer-feature.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "alexpasmantier/television",
"id": "alexpasmantier-television",
"version": "1.0.1",
"version": "1.0.2",
"description": "Install \"tv\" (television) binary",
"documentationURL": "https://github.com/devcontainer-community/devcontainer-features/tree/main/src/alexpasmantier-television",
"options": {
Expand All @@ -13,5 +13,8 @@
],
"description": "Version of \"tv\" to install."
}
}
},
"installsAfter": [
"ghcr.io/devcontainer-community/features/ca-certificates:latest"
]
}
7 changes: 5 additions & 2 deletions src/ankitpokhrel-jira-cli/devcontainer-feature.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "ankitpokhrel/jira-cli",
"id": "ankitpokhrel-jira-cli",
"version": "1.0.0",
"version": "1.0.1",
"description": "Install \"jira\" binary",
"documentationURL": "https://github.com/devcontainer-community/devcontainer-features/tree/main/src/ankitpokhrel-jira-cli",
"options": {
Expand All @@ -13,5 +13,8 @@
],
"description": "Version of \"jira\" to install."
}
}
},
"installsAfter": [
"ghcr.io/devcontainer-community/features/ca-certificates:latest"
]
}
7 changes: 5 additions & 2 deletions src/apt-build-essential/devcontainer-feature.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,10 @@
{
"name": "apt-build-essential",
"id": "apt-build-essential",
"version": "1.0.0",
"version": "1.0.1",
"description": "Install \"build-essential\" apt package (gcc, g++, make)",
"documentationURL": "https://github.com/devcontainer-community/devcontainer-features/tree/main/src/apt-build-essential"
"documentationURL": "https://github.com/devcontainer-community/devcontainer-features/tree/main/src/apt-build-essential",
"installsAfter": [
"ghcr.io/devcontainer-community/features/ca-certificates:latest"
]
}
9 changes: 6 additions & 3 deletions src/asdf-vm.com/devcontainer-feature.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "asdf-vm.com",
"id": "asdf-vm.com",
"version": "1.0.2",
"version": "1.0.3",
"description": "Install \"asdf\" binary to the HOME folder of the REMOTE user",
"documentationURL": "https://github.com/devcontainer-community/devcontainer-features/tree/main/src/asdf-vm.com",
"options": {
Expand All @@ -15,5 +15,8 @@
],
"description": "Version of \"asdf\" to install."
}
}
}
},
"installsAfter": [
"ghcr.io/devcontainer-community/features/ca-certificates:latest"
]
}
7 changes: 5 additions & 2 deletions src/astral.sh-uv/devcontainer-feature.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "astral.sh/uv",
"id": "astral.sh-uv",
"version": "1.0.4",
"version": "1.0.5",
"description": "Install \"uv\" and \"uvx\" binaries",
"documentationURL": "https://github.com/devcontainer-community/devcontainer-features/tree/main/src/astral.sh-uv",
"options": {
Expand All @@ -18,5 +18,8 @@
"description": "Enable or disable uv and uvx autocompletion.",
"type": "boolean"
}
}
},
"installsAfter": [
"ghcr.io/devcontainer-community/features/ca-certificates:latest"
]
}
7 changes: 5 additions & 2 deletions src/atuin.sh/devcontainer-feature.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "atuin.sh",
"id": "atuin.sh",
"version": "1.0.3",
"version": "1.0.4",
"description": "Install \"atuin\" binary",
"documentationURL": "https://github.com/devcontainer-community/devcontainer-features/tree/main/src/atuin.sh",
"options": {
Expand All @@ -13,5 +13,8 @@
],
"description": "Version of \"atuin\" to install."
}
}
},
"installsAfter": [
"ghcr.io/devcontainer-community/features/ca-certificates:latest"
]
}
9 changes: 6 additions & 3 deletions src/avivsinai-bitbucket-cli/devcontainer-feature.json
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
{
"name": "avivsinai/bitbucket-cli",
"id": "avivsinai-bitbucket-cli",
"version": "1.0.0",
"description": "bkt CLI for Bitbucket",
"version": "1.0.1",
"description": "bkt \u2014 CLI for Bitbucket",
"documentationURL": "https://github.com/devcontainer-community/devcontainer-features/tree/main/src/avivsinai-bitbucket-cli",
"options": {
"version": {
Expand All @@ -13,5 +13,8 @@
],
"description": "Version of \"bkt\" to install."
}
}
},
"installsAfter": [
"ghcr.io/devcontainer-community/features/ca-certificates:latest"
]
}
5 changes: 3 additions & 2 deletions src/aws-cli/devcontainer-feature.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"id": "aws-cli",
"version": "1.1.2",
"version": "1.1.3",
"name": "AWS CLI",
"documentationURL": "https://github.com/devcontainers/features/tree/main/src/aws-cli",
"description": "Installs the AWS CLI along with needed dependencies. Useful for base Dockerfiles that often are missing required install dependencies like gpg.",
Expand All @@ -15,6 +15,7 @@
}
},
"installsAfter": [
"ghcr.io/devcontainer-community/features/ca-certificates:latest",
"ghcr.io/devcontainers/features/common-utils"
]
}
}
7 changes: 5 additions & 2 deletions src/basecamp-fizzy-cli/devcontainer-feature.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "basecamp/fizzy-cli",
"id": "basecamp-fizzy-cli",
"version": "1.0.1",
"version": "1.0.2",
"description": "Install \"fizzy\" CLI binary",
"documentationURL": "https://github.com/devcontainer-community/devcontainer-features/tree/main/src/basecamp-fizzy-cli",
"options": {
Expand All @@ -13,5 +13,8 @@
],
"description": "Version of \"fizzy\" to install."
}
}
},
"installsAfter": [
"ghcr.io/devcontainer-community/features/ca-certificates:latest"
]
}
7 changes: 5 additions & 2 deletions src/bat/devcontainer-feature.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "bat",
"id": "bat",
"version": "1.0.1",
"version": "1.0.2",
"description": "Install \"bat\" binary",
"documentationURL": "https://github.com/devcontainer-community/devcontainer-features/tree/main/src/bat",
"options": {
Expand All @@ -13,5 +13,8 @@
],
"description": "Version of \"bat\" to install."
}
}
},
"installsAfter": [
"ghcr.io/devcontainer-community/features/ca-certificates:latest"
]
}
11 changes: 8 additions & 3 deletions src/biomejs.dev/devcontainer-feature.json
Original file line number Diff line number Diff line change
@@ -1,15 +1,20 @@
{
"name": "biomejs.dev",
"id": "biomejs.dev",
"version": "1.0.1",
"version": "1.0.2",
"description": "Install \"biome\" binary",
"documentationURL": "https://github.com/devcontainer-community/devcontainer-features/tree/main/src/biomejs.dev",
"options": {
"version": {
"type": "string",
"default": "latest",
"proposals": ["latest"],
"proposals": [
"latest"
],
"description": "Version of \"biome\" to install."
}
}
},
"installsAfter": [
"ghcr.io/devcontainer-community/features/ca-certificates:latest"
]
}
7 changes: 5 additions & 2 deletions src/btop/devcontainer-feature.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "btop",
"id": "btop",
"version": "1.0.3",
"version": "1.0.4",
"description": "Install \"btop\" binary",
"documentationURL": "https://github.com/devcontainer-community/devcontainer-features/tree/main/src/btop",
"options": {
Expand All @@ -13,5 +13,8 @@
],
"description": "Version of \"btop\" to install."
}
}
},
"installsAfter": [
"ghcr.io/devcontainer-community/features/ca-certificates:latest"
]
}
9 changes: 6 additions & 3 deletions src/bun.sh/devcontainer-feature.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "bun.sh",
"id": "bun.sh",
"version": "1.0.0",
"version": "1.0.1",
"description": "Install \"bun\" binary",
"documentationURL": "https://github.com/devcontainer-community/devcontainer-features/tree/main/src/bun.sh",
"options": {
Expand All @@ -13,5 +13,8 @@
],
"description": "Currently unused."
}
}
}
},
"installsAfter": [
"ghcr.io/devcontainer-community/features/ca-certificates:latest"
]
}
7 changes: 5 additions & 2 deletions src/ccache.dev/devcontainer-feature.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,10 @@
{
"name": "ccache.dev",
"id": "ccache.dev",
"version": "1.0.0",
"version": "1.0.1",
"description": "Install \"ccache\" binary",
"documentationURL": "https://github.com/devcontainer-community/devcontainer-features/tree/main/src/ccache.dev"
"documentationURL": "https://github.com/devcontainer-community/devcontainer-features/tree/main/src/ccache.dev",
"installsAfter": [
"ghcr.io/devcontainer-community/features/ca-certificates:latest"
]
}
7 changes: 5 additions & 2 deletions src/charmbracelet-gum/devcontainer-feature.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "charmbracelet/gum",
"id": "charmbracelet-gum",
"version": "1.0.4",
"version": "1.0.5",
"description": "Install \"gum\" binary",
"documentationURL": "https://github.com/devcontainer-community/devcontainer-features/tree/main/src/charmbracelet-gum",
"options": {
Expand All @@ -13,5 +13,8 @@
],
"description": "Version of \"gum\" to install."
}
}
},
"installsAfter": [
"ghcr.io/devcontainer-community/features/ca-certificates:latest"
]
}
7 changes: 5 additions & 2 deletions src/chezmoi.io/devcontainer-feature.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "chezmoi.io",
"id": "chezmoi.io",
"version": "1.0.2",
"version": "1.0.3",
"description": "Install \"chezmoi\" binary",
"documentationURL": "https://github.com/devcontainer-community/devcontainer-features/tree/main/src/chezmoi.io",
"options": {
Expand All @@ -13,5 +13,8 @@
],
"description": "Version of \"chezmoi\" to install."
}
}
},
"installsAfter": [
"ghcr.io/devcontainer-community/features/ca-certificates:latest"
]
}
7 changes: 5 additions & 2 deletions src/clang-format/devcontainer-feature.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,10 @@
{
"name": "clang-format",
"id": "clang-format",
"version": "1.0.0",
"version": "1.0.1",
"description": "Install \"clang-format\" binary",
"documentationURL": "https://github.com/devcontainer-community/devcontainer-features/tree/main/src/clang-format"
"documentationURL": "https://github.com/devcontainer-community/devcontainer-features/tree/main/src/clang-format",
"installsAfter": [
"ghcr.io/devcontainer-community/features/ca-certificates:latest"
]
}
7 changes: 5 additions & 2 deletions src/clang-tidy/devcontainer-feature.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,10 @@
{
"name": "clang-tidy",
"id": "clang-tidy",
"version": "1.0.0",
"version": "1.0.1",
"description": "Install \"clang-tidy\" binary",
"documentationURL": "https://github.com/devcontainer-community/devcontainer-features/tree/main/src/clang-tidy"
"documentationURL": "https://github.com/devcontainer-community/devcontainer-features/tree/main/src/clang-tidy",
"installsAfter": [
"ghcr.io/devcontainer-community/features/ca-certificates:latest"
]
}
7 changes: 5 additions & 2 deletions src/cloudflare.com-warp-cli/devcontainer-feature.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "cloudflare.com/warp-cli",
"id": "cloudflare.com-warp-cli",
"version": "1.0.1",
"version": "1.0.2",
"description": "Install \"warp-cli\" binary",
"documentationURL": "https://github.com/devcontainer-community/devcontainer-features/tree/main/src/cloudflare.com-warp-cli",
"options": {
Expand All @@ -13,5 +13,8 @@
],
"description": "Currently unused."
}
}
},
"installsAfter": [
"ghcr.io/devcontainer-community/features/ca-certificates:latest"
]
}
Loading
Loading