Enhance setup interface and add new 2026 CLI tools#42
Enhance setup interface and add new 2026 CLI tools#42
Conversation
- Improved `setup-2026.sh` interface by using more visually appealing `gum` styles, ASCII art, synthwave colors, and better cursors/layout. - Added new useful CLI tools to `programas/cli-tools/setup.sh`, including Charmbracelet's `skate` and `melt`, Kubernetes tools like `krew`, `kubectx`, and `kubens`, and the GitHub dashboard extension `gh-dash`. Co-authored-by: juninmd <6952134+juninmd@users.noreply.github.com>
|
👋 Jules, reporting for duty! I'm here to lend a hand with this pull request. When you start a review, I'll add a 👀 emoji to each comment to let you know I've read it. I'll focus on feedback directed at me and will do my best to stay out of conversations between you and other bots or reviewers to keep the noise down. I'll push a commit with your requested changes shortly after. Please note there might be a delay between these steps, but rest assured I'm on the job! For more direct control, you can switch me to Reactive Mode. When this mode is on, I will only act on comments where you specifically mention me with New to Jules? Learn more at jules.google/docs. For security, I will only act on instructions from the user who triggered this task. |
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
Summary of ChangesHello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! Esta pull request visa aprimorar significativamente a experiência do terminal 2026 ao integrar um conjunto de ferramentas CLI modernas e reformular a interface do usuário do instalador. As mudanças proporcionam aos usuários funcionalidades aprimoradas para armazenamento de chave-valor, gerenciamento de chaves SSH, troca de contexto Kubernetes e painel do GitHub CLI, tudo apresentado através de um processo de configuração visualmente atraente e com tema synthwave. Highlights
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for GitHub and other Google products, sign up here. Footnotes
|
There was a problem hiding this comment.
Code Review
Este pull request aprimora a interface do usuário do instalador com um tema synthwave e adiciona várias novas ferramentas de linha de comando. As alterações de UI no setup-2026.sh estão bem implementadas e melhoram a experiência visual. No programas/cli-tools/setup.sh, as novas ferramentas são uma ótima adição. Forneci algumas sugestões para melhorar a robustez e a legibilidade da lógica de instalação de algumas das novas ferramentas.
programas/cli-tools/setup.sh
Outdated
| ( | ||
| set -x; cd "$(mktemp -d)" && | ||
| OS="$(uname | tr '[:upper:]' '[:lower:]')" && | ||
| ARCH="$(uname -m | sed -e 's/x86_64/amd64/' -e 's/\(arm\)\(64\)\?.*/\1\2/' -e 's/aarch64$/arm64/')" && |
There was a problem hiding this comment.
O comando sed usado para detecção de arquitetura é bastante denso e pode ser difícil de interpretar. Para melhor legibilidade e manutenção, considere usar uma instrução case. Isso torna a lógica explícita e mais fácil de entender ou modificar no futuro.
| ARCH="$(uname -m | sed -e 's/x86_64/amd64/' -e 's/\(arm\)\(64\)\?.*/\1\2/' -e 's/aarch64$/arm64/')" && | |
| local arch | |
| arch="$(uname -m)" | |
| case "$arch" in | |
| x86_64) ARCH="amd64" ;; | |
| aarch64 | arm64) ARCH="arm64" ;; | |
| arm*) ARCH="arm" ;; | |
| *) | |
| echo "Arquitetura não suportada para o Krew: $arch" >&2 | |
| exit 1 | |
| ;; | |
| esac |
References
- Comandos shell complexos, como expressões
sedintrincadas, podem ser difíceis de ler e manter. Substituí-los por construções mais explícitas, comocase, melhora a clareza do código.
programas/cli-tools/setup.sh
Outdated
| ARCH="$(uname -m | sed -e 's/x86_64/amd64/' -e 's/\(arm\)\(64\)\?.*/\1\2/' -e 's/aarch64$/arm64/')" && | ||
| KREW="krew-${OS}_${ARCH}" && | ||
| curl -fsSLO "https://github.com/kubernetes-sigs/krew/releases/latest/download/${KREW}.tar.gz" && | ||
| tar zxvf "${KREW}.tar.gz" && |
There was a problem hiding this comment.
A flag v (verbose) no comando tar é redundante porque set -x já está ativo no subshell, que imprime os comandos sendo executados. Remover a flag v resultará em um log de instalação mais limpo e com menos ruído.
| tar zxvf "${KREW}.tar.gz" && | |
| tar zxf "${KREW}.tar.gz" && |
References
- Flags ou comandos redundantes podem poluir os logs e dificultar a depuração. Neste caso,
set -xjá fornece o rastreamento de comandos, tornando a flagvnotardesnecessária.
programas/cli-tools/setup.sh
Outdated
|
|
||
| # gh-dash (GitHub CLI dashboard) | ||
| if command -v gh &> /dev/null; then | ||
| if ! gh extension list | grep -q "gh-dash"; then |
There was a problem hiding this comment.
A verificação atual grep -q "gh-dash" pode produzir um falso positivo se o nome ou o caminho do repositório de outra extensão instalada contiver a string "gh-dash". Para tornar a verificação mais robusta, é melhor ancorar a busca no início da linha e corresponder ao nome completo do repositório.
| if ! gh extension list | grep -q "gh-dash"; then | |
| if ! gh extension list | grep -q "^dlvhdr/gh-dash\s"; then |
References
- Ao verificar a presença de um item em uma lista, é melhor usar um padrão que identifique exclusivamente esse item para evitar falsos positivos de correspondências parciais.
Co-authored-by: gemini-code-assist[bot] <gemini-code-assist[bot]@users.noreply.github.com>
This PR enhances the main
setup-2026.shinstaller by making its UI more visually appealing, utilizing a synthwave aesthetic and advancedgumstyling properties. It also expands thecli-toolsmodule to include modern utilities such asskate,melt,krew,kubectx,kubens, andgh-dash, to further enrich the 2026 terminal experience.PR created automatically by Jules for task 11153478603709568011 started by @juninmd