Skip to content

Add C/C++ dev tool features and collection-c-cpp meta-feature#226

Merged
sebst merged 5 commits intomainfrom
copilot/add-cpp-dev-features
Mar 26, 2026
Merged

Add C/C++ dev tool features and collection-c-cpp meta-feature#226
sebst merged 5 commits intomainfrom
copilot/add-cpp-dev-features

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented Mar 26, 2026

Adds 11 individual C/C++ developer tool features plus a collection-c-cpp meta-feature that pulls them all in via dependsOn.

Individual features

id binary install method purpose
cmake.org cmake apt build system generator
ninja-build.org ninja apt fast build system (ninja-build)
sourceware.org-gdb gdb apt GNU debugger
valgrind.org valgrind apt memory error detector / profiler
ccache.dev ccache apt compiler cache
danmar-cppcheck cppcheck apt static analysis
clang-format clang-format apt LLVM code formatter
clang-tidy clang-tidy apt LLVM linter / static analyzer
distcc.org distcc apt distributed C/C++ compiler
vcpkg.io vcpkg git C/C++ package manager by Microsoft
apt-build-essential gcc/g++/make apt C/C++ compiler toolchain (build-essential)

Meta-feature

collection-c-cpp declares all 11 above via dependsOn in devcontainer-feature.json; its install.sh is intentionally a no-op. Referencing it in a devcontainer is enough to get the full toolchain:

// devcontainer.json
{
  "features": {
    "ghcr.io/devcontainer-community/features/collection-c-cpp:1": {}
  }
}

Each feature follows repo conventions: devcontainer-feature.json, install.sh, NOTES.md, and a test.sh that verifies the binary version output. Root README.md updated with all 12 entries in alphabetical order.

Original prompt

This section details on the original issue you should resolve

<issue_title>Add features for C/C++ development</issue_title>
<issue_description></issue_description>

<agent_instructions>Find out popular dev tools for C/C++ developers and create features for all of them,
then create a meta-feature (with just dependencies to the features you created) called c-cpp-dev-collection).</agent_instructions>

Comments on the Issue (you are @copilot in this section)


📍 Connect Copilot coding agent with Jira, Azure Boards or Linear to delegate work to Copilot in one click without leaving your project management tool.

@sebst sebst marked this pull request as ready for review March 26, 2026 16:31
Copilot AI changed the title [WIP] Add features for C/C++ development tools Add C/C++ dev tool features and c-cpp-dev-collection meta-feature Mar 26, 2026
Copilot AI requested a review from sebst March 26, 2026 16:38
Copy link
Copy Markdown
Member

@sebst sebst left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should also add features:

@@ -0,0 +1,7 @@
{
"name": "ccache",
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should be named ccache.dev

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Renamed to ccache.dev in 25bd4e7.

@@ -0,0 +1,7 @@
{
"name": "cmake",
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should be named cmake.org

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Renamed to cmake.org in 25bd4e7.

@@ -0,0 +1,7 @@
{
"name": "cppcheck",
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should be named danmar/cppcheck (id danmar-cppcheck)

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Renamed to danmar-cppcheck (name: danmar/cppcheck) in 25bd4e7.

@@ -0,0 +1,7 @@
{
"name": "gdb",
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should be named sourceware.org/gdb (id sourceware.org-gdb)

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Renamed to sourceware.org-gdb (name: sourceware.org/gdb) in 25bd4e7.

@@ -0,0 +1,7 @@
{
"name": "ninja",
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should be called ninja-build.org.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Renamed to ninja-build.org in 25bd4e7.

@@ -0,0 +1,7 @@
{
"name": "valgrind",
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should be named valgrind.org.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Renamed to valgrind.org in 25bd4e7.

Copy link
Copy Markdown
Contributor Author

Copilot AI commented Mar 26, 2026

should also add features:

Added in 25bd4e7: distcc.org (apt), vcpkg.io (git clone + bootstrap from microsoft/vcpkg), and apt-build-essential (apt). All three are now included in c-cpp-dev-collection as well.

Copilot AI requested a review from sebst March 26, 2026 16:55
@@ -0,0 +1,20 @@
{
"name": "c-cpp-dev-collection",
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

change name to collection-c-cpp

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Renamed to collection-c-cpp in a8526d8.

Copilot AI changed the title Add C/C++ dev tool features and c-cpp-dev-collection meta-feature Add C/C++ dev tool features and collection-c-cpp meta-feature Mar 26, 2026
Copilot AI requested a review from sebst March 26, 2026 16:58
Copy link
Copy Markdown
Member

@sebst sebst left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

tests for apt-build-essential fail

Copy link
Copy Markdown
Contributor Author

Copilot AI commented Mar 26, 2026

tests for apt-build-essential fail

Fixed in a27e011. make --version outputs GNU Make X.Y (capital M), so grep 'make' (case-sensitive) was failing. Changed to grep -i 'make'.

Copilot AI requested a review from sebst March 26, 2026 17:04
@sebst sebst merged commit e00d1ae into main Mar 26, 2026
48 of 51 checks passed
@sebst sebst deleted the copilot/add-cpp-dev-features branch March 26, 2026 17:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add features for C/C++ development

2 participants