-
Notifications
You must be signed in to change notification settings - Fork 1
feat: Add charmebracelet-gum feature
#66
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR adds support for installing the charmbracelet/gum CLI tool as a devcontainer feature. It follows the established pattern in this repository for adding new features.
- Implements a new devcontainer feature for the
gumbinary from Charmbracelet - Uses GitHub releases to download and install the appropriate binary for the system architecture
- Includes automated testing to verify the installation
Reviewed Changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
| src/charmbracelet-gum/devcontainer-feature.json | Defines the feature metadata with configurable version option |
| src/charmbracelet-gum/install.sh | Installation script that downloads and installs gum binary from GitHub releases |
| test/charmbracelet-gum/test.sh | Test script to verify gum is installed and functional |
| .github/workflows/test.yaml | Adds charmbracelet-gum to the CI test matrix |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| # if [[ "$arch" == "aarch64" ]]; then | ||
| # arch="arm64" | ||
| # elif [[ "$arch" == "x86_64" ]]; then | ||
| # arch="x64" | ||
| # fi |
Copilot
AI
Oct 30, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The commented-out code for architecture mapping should be removed or implemented. The current implementation returns uname -m output directly (e.g., 'x86_64', 'aarch64'), which must match the naming convention used in the gum release archives. If the releases use different architecture names, this mapping logic should be uncommented and corrected.
| # if [[ "$arch" == "aarch64" ]]; then | |
| # arch="arm64" | |
| # elif [[ "$arch" == "x86_64" ]]; then | |
| # arch="x64" | |
| # fi | |
| if [[ "$arch" == "aarch64" ]]; then | |
| arch="arm64" | |
| elif [[ "$arch" == "x86_64" ]]; then | |
| arch="x64" | |
| fi |
| # arch="x64" | ||
| # fi | ||
| echo "$arch" | ||
| # echo "$(dpkg --print-architecture)" --- IGNORE --- |
Copilot
AI
Oct 30, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This commented-out line with '--- IGNORE ---' should be removed as it serves no purpose and clutters the code.
| # echo "$(dpkg --print-architecture)" --- IGNORE --- |
Closes #65