{"id":31074153,"url":"https://github.com/bernardopg/zshrc-config","last_synced_at":"2026-04-11T01:32:10.196Z","repository":{"id":314640747,"uuid":"1056279256","full_name":"bernardopg/zshrc-config","owner":"bernardopg","description":"A modular zsh configuration with sensible defaults, handy aliases, custom functions, and plugin management for macOS and Linux. Designed to be forked and customized.","archived":false,"fork":false,"pushed_at":"2025-09-13T19:11:25.000Z","size":0,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-09-13T19:45:06.547Z","etag":null,"topics":["aliases","antigen","dotfiles","linux","macos","oh-my-zsh","productivity","prompt","shell","terminal","themes","zinit","zplug","zplugin","zsh","zshrc"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bernardopg.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-09-13T18:49:46.000Z","updated_at":"2025-09-13T19:22:05.000Z","dependencies_parsed_at":"2025-09-13T19:45:08.341Z","dependency_job_id":"0771836a-5777-45ce-990d-3186d2256522","html_url":"https://github.com/bernardopg/zshrc-config","commit_stats":null,"previous_names":["bernardopg/zshrc-config"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/bernardopg/zshrc-config","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bernardopg%2Fzshrc-config","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bernardopg%2Fzshrc-config/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bernardopg%2Fzshrc-config/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bernardopg%2Fzshrc-config/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bernardopg","download_url":"https://codeload.github.com/bernardopg/zshrc-config/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bernardopg%2Fzshrc-config/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":275348511,"owners_count":25448626,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-16T02:00:10.229Z","response_time":65,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aliases","antigen","dotfiles","linux","macos","oh-my-zsh","productivity","prompt","shell","terminal","themes","zinit","zplug","zplugin","zsh","zshrc"],"created_at":"2025-09-16T02:04:03.319Z","updated_at":"2026-04-11T01:32:10.160Z","avatar_url":"https://github.com/bernardopg.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🚀 zshrc-config ⚡\n\n\u003e 💡 A comprehensive, universal zsh configuration that works identically across Linux, WSL, MSYS2, Git-Bash, and Cygwin. Features a powerful `update()` function that manages 25+ package managers, smart aliases, modern tool integration, and optimized performance with compilation and caching.\n\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n[![Platform](https://img.shields.io/badge/platform-Linux%20%7C%20WSL%20%7C%20Windows%20%28MSYS2%20%7C%20Git--Bash%20%7C%20Cygwin%29-blue.svg)](https://github.com/bernardopg/zshrc-config)\n[![GitHub issues](https://img.shields.io/github/issues/bernardopg/zshrc-config.svg)](https://github.com/bernardopg/zshrc-config/issues)\n[![GitHub last commit](https://img.shields.io/github/last-commit/bernardopg/zshrc-config.svg)](https://github.com/bernardopg/zshrc-config/commits)\n[![Repo size](https://img.shields.io/github/repo-size/bernardopg/zshrc-config.svg)](https://github.com/bernardopg/zshrc-config)\n\n## 📋 Navigation / Navegação 🚀\n\n### 🌐 Languages / Idiomas 🌍\n\n- **[English](#english)** - Complete documentation in English 🇺🇸\n- **[Português (Brasil)](#português-brasil)** - Documentação completa em português 🇧🇷\n\n### 📚 Documentation Sections / Seções da Documentação 📖\n\n- **[Dotfiles — Universal Zsh + Update Function](#dotfiles--universal-zsh--update-function)** - Detailed technical documentation (English) ⚙️\n- **[Dotfiles — Universal Zsh + Update Function](#dotfiles--universal-zsh--update-function-1)** - Documentação técnica detalhada (Português) ⚙️\n\n### 📖 Other Documents / Outros Documentos 📋\n\n- **[Contributing Guide / Guia de Contribuição](CONTRIBUTING.md)** - How to contribute to the project 🤝\n- **[Security Policy / Política de Segurança](SECURITY.md)** - Security guidelines and vulnerability reporting 🔒\n- **[License / Licença](LICENSE)** - MIT License details 📄\n\n---\n\n## English 🇺🇸\n\n🚀 **zshrc-config** is a production-ready, universal zsh configuration designed for developers and system administrators. It provides a single `.zshrc` file that works identically across all major platforms, includes a comprehensive system update function, modern tool integrations, and performance optimizations.\n\nThis configuration is battle-tested and production-ready — use it as-is or customize to your needs.\n\n### ✨ Features\n\n- � **Universal compatibility**: Works on Linux, WSL, MSYS2, Git-Bash, Cygwin\n- 🔄 **Comprehensive update system**: Manages 25+ package managers (apt, npm, cargo, pipx, platformio, etc.)\n- 🚀 **Performance optimized**: zcompile, caching, lazy loading, XDG Base Directory compliance\n- 🔒 **Security-first**: Private API keys outside repo, proper permissions\n- 🎨 **Modern tool integration**: eza, bat, fzf, zoxide, starship auto-detection\n- 📚 **Smart history**: Multi-terminal sync, no duplicates, monthly rotation (100k lines)\n- 🎯 **Intelligent aliases**: Context-aware, fallback-enabled\n- 🔌 **Oh My Zsh compatible**: Works with or without OMZ\n- 🛠️ **Developer-friendly**: Git info, Docker/Podman setup, SSH agent management\n\n### 🚀 Quick Installation\n\n```bash\n# 1. Clone the repository\ngit clone https://github.com/bernardopg/zshrc-config.git ~/.zshrc-config\n\n# 2. Create symbolic link\nln -sf ~/.zshrc-config/.zshrc ~/.zshrc\n\n# 3. Set up private directory for API keys\nmkdir -p ~/.config/private\nchmod 700 ~/.config/private\ncp ~/.zshrc-config/env.example ~/.config/private/env.zsh\nchmod 600 ~/.config/private/env.zsh\n\n# 4. Reload zsh\nexec zsh\n```\n\n✅ **Done!** The first load compiles the file for faster subsequent startups.\n\n### Contributing\n\nPull requests are welcome. Open an issue to discuss larger changes first.\n\n### Contact\n\n- **Website**: [bebitterbebetter.com.br](https://bebitterbebetter.com.br/)\n- **Email**: [bernardo.gomes@bebitterbebetter.com.br](mailto:bernardo.gomes@bebitterbebetter.com.br)\n- **GitHub**: [@bernardopg](https://github.com/bernardopg)\n- **Instagram**: [@be.pgomes](https://www.instagram.com/be.pgomes/)\n- **ORCID**: [0009-0005-1610-5039](https://orcid.org/0009-0005-1610-5039)\n\n### License\n\nThis project is licensed under the MIT License — see `LICENSE` for details.\n\n---\n\n## Dotfiles — Universal Zsh + Update Function\n\n\u003e A single `.zshrc` that works across multiple environments (Linux, WSL, MSYS2, Git-Bash), with fast completion, smart aliases, an `update()` function that integrates multiple package managers, and various performance improvements.\n\n### ✨ Highlights\n\n| Feature | Benefit |\n|--------:|:--------|\n| **Universal** | Identical on pure Linux, WSL, MSYS2, Cygwin, Git-Bash |\n| **Secure** | API keys stay in `~/.config/private/env.zsh` (outside repo, `chmod 600`) |\n| **Fast** | `zcompile`, lazy loading, `zsh-defer`, completion caching |\n| **Complete** | `update` manages 25+ package managers with retry, logs, dry-run, cleanup |\n| **Git-info** | Branch in prompt without slow plugins |\n| **Multi-terminal history** | No duplicates, real-time, 100k lines |\n| **True-color** | Activates only if terminal supports it |\n| **No surprises** | Silences non-existent features (e.g., `beep`, `firmware` on WSL) |\n\n### 📦 Quick Installation\n\n```bash\n# 1. Clone (or download just the .zshrc)\ngit clone https://github.com/bernardopg/zshrc-config.git ~/.zshrc-config\n\n# 2. Create symbolic link\nln -sf ~/.zshrc-config/.zshrc ~/.zshrc\n\n# 3. Create private directory (API keys, etc.)\nmkdir -p ~/.config/private\nchmod 700 ~/.config/private\ncp ~/.zshrc-config/env.example ~/.config/private/env.zsh\nchmod 600 ~/.config/private/env.zsh\n\n# 4. Reload\nexec zsh\n```\n\nDone! The first execution compiles the file (`zcompile`) and creates caches — subsequent shells open even faster.\n\n### 🔑 Customizing API Keys\n\nEdit `~/.config/private/env.zsh` (never committed):\n\n```bash\nexport OPENAI_API_KEY='sk-XXXXXXXXXXXX'\nexport ANTHROPIC_API_KEY='sk-ant-XXXXXXXX'\n```\n\nExample available in `env.example`.\n\n### ⚙️ Key Commands \u0026 Features\n\n| Command | Description |\n|:-------|:-----------|\n| `update` or `up` | Updates **everything** (system, languages, containers, firmware) |\n| `update --dry-run` | Simulates what would be updated (safe preview) |\n| `update --system --cleanup` | Only system packages + cleanup old kernels |\n| `update --only apt,npm,cargo` | Update specific package managers only |\n| `update --exclude snap` | Update everything except specified managers |\n| `update --security-only` | Security patches only |\n| `update --low-data` | Skip bandwidth-heavy operations |\n| `rz` | Reloads zsh after editing `.zshrc` |\n| `zsh-health` | Quick diagnostic (cache size, PATH, history count) |\n| `killport 3000` | Kills process on specified port (cross-platform) |\n| `extract file.zip` | Extracts **any** compressed file format |\n| `mkcd dirname` | Creates directory and cd into it |\n| `ff pattern` | Fast file search by name pattern |\n| `..` / `...` | Navigate up 1 or 2 directory levels |\n| `ll` / `la` | Enhanced `ls` with eza/fallback, icons, and colors |\n\n### 🔄 Update Function Features\n\n**Supported Package Managers (25+):**\n\n- **System**: apt, snap, flatpak, brew, nix, firmware (fwupdmgr)\n- **Languages**: pip, pipx, npm, yarn, pnpm, cargo, rust, gem, composer, go, flutter\n- **Dev Tools**: docker, podman, conda, mamba, asdf, sdkman, platformio\n- **Shell**: oh-my-zsh, antigen, zinit\n\n**Advanced Features:**\n\n- 🔄 Exponential backoff retry with configurable attempts\n- 🕐 APT lock detection with intelligent waiting\n- 📊 Comprehensive logging with automatic rotation\n- 🧹 Cleanup modes (caches, old kernels, unused packages)\n- 🔒 Security-only updates support\n- 🚦 Dry-run mode for safe testing\n- 📡 Low-data mode for limited bandwidth\n- ⚡ Parallel operations where safe\n- 🛡️ WSL detection with platform-specific optimizations\n\n### 🧩 Optional Dependencies (Auto-detected)\n\n| Tool | Benefit | Auto-fallback |\n|:----|:--------|:-------------|\n| `eza` | Colored `ls` with icons | ✅ Falls back to `ls --color` |\n| `bat`/`batcat` | `cat` with syntax highlighting | ✅ Falls back to `cat` |\n| `fd`/`fdfind` | Fast `find` for FZF | ✅ Falls back to `find` |\n| `zoxide` | `cd` with frecency | ✅ Falls back to `cd` |\n| `starship` | Ultra-fast prompt | ✅ Falls back to custom git prompt |\n| `fzf` | Fuzzy-find for history/files | ✅ Graceful degradation |\n| `pipx` | Isolated Python apps (PEP 668) | ✅ Prevents system pip issues |\n\n**🎯 Smart Detection**: All tools are auto-detected and gracefully fall back to standard alternatives.\n\n### 🔄 Update Function Examples\n\n```bash\n# Safe preview of all updates\nupdate --dry-run\n\n# Security patches only\nupdate --security-only\n\n# System cleanup + kernel management\nupdate --cleanup --kernels-keep 3\n\n# Update specific managers only\nupdate --only apt,npm,cargo\n\n# Everything except problematic managers\nupdate --exclude snap,flatpak\n\n# Low bandwidth mode\nupdate --low-data\n\n# Non-interactive automation\nupdate --yes --quiet\n\n# Comprehensive update with cleanup\nupdate --all --cleanup --security-only\n```\n\n**📊 Automatic Logging**: All operations logged to `~/.local/state/sysupdate/logs/` with rotation (keeps last 10 by default).\n\n### 📁 Repository Structure\n\n```text\n.\n├── .zshrc              # Main configuration (900+ lines, 26 sections)\n├── env.example         # Private environment template (API keys, etc.)\n├── README.md           # This documentation\n├── CONTRIBUTING.md     # Contribution guidelines\n├── SECURITY.md         # Security policy\n└── LICENSE             # MIT Licensenotes\n```\n\n### 🏗️ Architecture Highlights\n\n- **📁 XDG Base Directory Compliant**: All caches in `~/.cache/zsh/`, logs in `~/.local/state/`\n- **🔒 Security-first**: Private keys in `~/.config/private/` (excluded from repo)\n- **⚡ Performance**: zcompile, lazy loading, intelligent caching\n- **🔄 Monthly History Rotation**: `history-2025-09` format prevents bloat\n- **🌍 Platform Detection**: Auto-adapts to Linux/WSL/MSYS2/Git-Bash\n- **🎨 True-color Detection**: Only enables advanced features when supported\n- **🧩 26 Organized Sections**: From profiling to system info, everything has its place\n- **⏱️ Smart Timeouts**: Prevents hanging on broken tools (yarn, gem)\n- **🚫 No System Pip**: PEP 668 compliant, uses pipx for Python apps\n\n### 🤝 Contributing\n\nContributions welcome! Please:\n\n1. **Test on multiple platforms**: Linux, WSL, MSYS2, Git-Bash\n2. **Follow the architecture**: XDG compliance, graceful fallbacks, performance-first\n3. **Update documentation**: Keep README.md current with features\n4. **Security-minded**: No API keys in repo, proper permissions\n\nSee [CONTRIBUTING.md](CONTRIBUTING.md) for detailed guidelines.\n\n### 📄 License\n\nMIT – do what you want, but no warranties.\nSee `LICENSE` for details.\n\n---\n\n## Português (Brasil) 🇧🇷\n\n🚀 **zshrc-config** é uma configuração zsh universal e pronta para produção, projetada para desenvolvedores e administradores de sistema. Fornece um único arquivo `.zshrc` que funciona identicamente em todas as principais plataformas, inclui uma função abrangente de atualização do sistema, integrações com ferramentas modernas e otimizações de performance.\n\nEsta configuração é testada em produção — use como está ou customize conforme suas necessidades.\n\n### ✨ Funcionalidades\n\n- � **Compatibilidade universal**: Funciona no Linux, WSL, MSYS2, Git-Bash, Cygwin\n- 🔄 **Sistema de atualização abrangente**: Gerencia 25+ gerenciadores (apt, npm, cargo, pipx, platformio, etc.)\n- 🚀 **Otimizado para performance**: zcompile, cache, carregamento lazy, compliance XDG\n- � **Segurança em primeiro lugar**: Chaves API privadas fora do repo, permissões adequadas\n- 🎨 **Integração com ferramentas modernas**: Auto-detecção de eza, bat, fzf, zoxide, starship\n- � **Histórico inteligente**: Sync multi-terminal, sem duplicatas, rotação mensal (100k linhas)\n- 🎯 **Aliases inteligentes**: Sensíveis ao contexto, com fallbacks\n- 🔌 **Compatível com Oh My Zsh**: Funciona com ou sem OMZ\n- 🛠️ **Amigável para desenvolvedores**: Info do Git, setup Docker/Podman, gerenciamento SSH agent\n\n### 🚀 Instalação Rápida\n\n```bash\n# 1. Clone o repositório\ngit clone https://github.com/bernardopg/zshrc-config.git ~/.zshrc-config\n\n# 2. Crie link simbólico\nln -sf ~/.zshrc-config/.zshrc ~/.zshrc\n\n# 3. Configure diretório privado para chaves API\nmkdir -p ~/.config/private\nchmod 700 ~/.config/private\ncp ~/.zshrc-config/env.example ~/.config/private/env.zsh\nchmod 600 ~/.config/private/env.zsh\n\n# 4. Recarregue o zsh\nexec zsh\n```\n\n✅ **Pronto!** O primeiro carregamento compila o arquivo para startups mais rápidos posteriormente.\n\n### Contribuindo\n\nPull requests são bem-vindos. Abra uma issue para discutir mudanças maiores antes.\n\n### Contato\n\n- **Site**: [bebitterbebetter.com.br](https://bebitterbebetter.com.br/)\n- **Email**: [bernardo.gomes@bebitterbebetter.com.br](mailto:bernardo.gomes@bebitterbebetter.com.br)\n- **GitHub**: [@bernardopg](https://github.com/bernardopg)\n- **Instagram**: [@be.pgomes](https://www.instagram.com/be.pgomes/)\n- **ORCID**: [0009-0005-1610-5039](https://orcid.org/0009-0005-1610-5039)\n\n### Licença\n\nEste projeto está licenciado sob a Licença MIT — veja `LICENSE` para detalhes.\n\n---\n\n## Dotfiles — Universal Zsh + Update Function\n\n\u003e Um único `.zshrc` que funciona em múltiplos ambientes (Linux, WSL, MSYS2, Git-Bash), com completion rápida, aliases inteligentes, função `update()` que integra vários gerenciadores e diversas melhorias de performance.\n\n### ✨ Destaques\n\n| Recurso | Benefício |\n|--------:|:----------|\n| **Universal** | Idêntico no Linux puro, WSL, MSYS2, Cygwin, Git-Bash |\n| **Seguro** | Chaves de API ficam em `~/.config/private/env.zsh` (fora do repo, `chmod 600`) |\n| **Rápido** | `zcompile`, carregamento lazy, `zsh-defer`, cache de completion |\n| **Completo** | `update` gerencia 25+ gerenciadores com retry, logs, dry-run, cleanup |\n| **Git-info** | Branch no prompt sem plugins lentos |\n| **Histórico multi-terminal** | Sem duplicatas, tempo real, 100k linhas |\n| **True-color** | Ativa só se o terminal suportar |\n| **Sem surprises** | Silencia recursos inexistentes (ex.: `beep`, `firmware` no WSL) |\n\n### 📦 Instalação rápida\n\n```bash\n# 1. Clone (ou baixe só o .zshrc)\ngit clone https://github.com/bernardopg/zshrc-config.git ~/.zshrc-config\n\n# 2. Link simbólico\nln -sf ~/.zshrc-config/.zshrc ~/.zshrc\n\n# 3. Crie o diretório privado (API keys, etc.)\nmkdir -p ~/.config/private\nchmod 700 ~/.config/private\ncp ~/.zshrc-config/env.example ~/.config/private/env.zsh\nchmod 600 ~/.config/private/env.zsh\n\n# 4. Recarregue\nexec zsh\n```\n\nPronto! A primeira execução compila o arquivo (`zcompile`) e cria caches — próximos shells abrem ainda mais rápido.\n\n### 🔑 Personalizando chaves de API\n\nEdite `~/.config/private/env.zsh` (nunca commitado):\n\n```bash\nexport OPENAI_API_KEY='sk-XXXXXXXXXXXX'\nexport ANTHROPIC_API_KEY='sk-ant-XXXXXXXX'\n```\n\nExemplo disponível em `env.example`.\n\n### ⚙️ Comandos e Recursos Principais\n\n| Comando | Descrição |\n|:-------|:----------|\n| `update` ou `up` | Atualiza **tudo** (sistema, linguagens, containers, firmware) |\n| `update --dry-run` | Simula o que seria atualizado (preview seguro) |\n| `update --system --cleanup` | Só pacotes de sistema + limpa kernels antigos |\n| `update --only apt,npm,cargo` | Atualiza gerenciadores específicos apenas |\n| `update --exclude snap` | Atualiza tudo exceto gerenciadores especificados |\n| `update --security-only` | Apenas patches de segurança |\n| `update --low-data` | Pula operações que consomem muita banda |\n| `rz` | Recarrega zsh após editar `.zshrc` |\n| `zsh-health` | Diagnóstico rápido (tamanho cache, PATH, contagem histórico) |\n| `killport 3000` | Mata processo na porta especificada (multiplataforma) |\n| `extract arquivo.zip` | Extrai **qualquer** formato de arquivo compactado |\n| `mkcd dirname` | Cria diretório e faz cd nele |\n| `ff pattern` | Busca rápida de arquivos por padrão de nome |\n| `..` / `...` | Navega 1 ou 2 níveis de diretório acima |\n| `ll` / `la` | `ls` melhorado com eza/fallback, ícones e cores |\n\n### 🔄 Recursos da Função Update\n\n**Gerenciadores Suportados (25+):**\n\n- **Sistema**: apt, snap, flatpak, brew, nix, firmware (fwupdmgr)\n- **Linguagens**: pip, pipx, npm, yarn, pnpm, cargo, rust, gem, composer, go, flutter\n- **Ferramentas Dev**: docker, podman, conda, mamba, asdf, sdkman, platformio\n- **Shell**: oh-my-zsh, antigen, zinit\n\n**Recursos Avançados:**\n\n- 🔄 Retry com backoff exponencial e tentativas configuráveis\n- 🕐 Detecção de locks do APT com espera inteligente\n- 📊 Logging abrangente com rotação automática\n- 🧹 Modos de limpeza (caches, kernels antigos, pacotes não utilizados)\n- 🔒 Suporte a atualizações apenas de segurança\n- 🚦 Modo dry-run para testes seguros\n- 📡 Modo low-data para largura de banda limitada\n- ⚡ Operações paralelas onde seguro\n- 🛡️ Detecção WSL com otimizações específicas da plataforma\n\n### 🧩 Dependências Opcionais (Auto-detectadas)\n\n| Ferramenta | Benefício | Auto-fallback |\n|:----------|:-----------|:-------------|\n| `eza` | `ls` colorido com ícones | ✅ Volta para `ls --color` |\n| `bat`/`batcat` | `cat` com syntax highlighting | ✅ Volta para `cat` |\n| `fd`/`fdfind` | `find` rápido para FZF | ✅ Volta para `find` |\n| `zoxide` | `cd` com frecência | ✅ Volta para `cd` |\n| `starship` | Prompt ultra-rápido | ✅ Volta para prompt git customizado |\n| `fzf` | Fuzzy-find para histórico/arquivos | ✅ Degradação graciosa |\n| `pipx` | Apps Python isolados (PEP 668) | ✅ Previne problemas com pip do sistema |\n\n**🎯 Detecção Inteligente**: Todas as ferramentas são auto-detectadas e voltam graciosamente para alternativas padrão.\n\n### 🔄 Exemplos da Função Update\n\n```bash\n# Preview seguro de todas as atualizações\nupdate --dry-run\n\n# Apenas patches de segurança\nupdate --security-only\n\n# Limpeza do sistema + gerenciamento de kernel\nupdate --cleanup --kernels-keep 3\n\n# Atualizar apenas gerenciadores específicos\nupdate --only apt,npm,cargo\n\n# Tudo exceto gerenciadores problemáticos\nupdate --exclude snap,flatpak\n\n# Modo largura de banda baixa\nupdate --low-data\n\n# Automação não-interativa\nupdate --yes --quiet\n\n# Atualização abrangente com limpeza\nupdate --all --cleanup --security-only\n```\n\n**📊 Logging Automático**: Todas as operações logadas em `~/.local/state/sysupdate/logs/` com rotação (mantém últimos 10 por padrão).\n\n### 📁 Estrutura do Repositório\n\n```text\n.\n├── .zshrc              # Configuração principal (900+ linhas, 26 seções)\n├── env.example         # Template de ambiente privado (chaves API, etc.)\n├── README.md           # Esta documentação\n├── CONTRIBUTING.md     # Diretrizes de contribuição\n├── SECURITY.md         # Política de segurança\n└── LICENSE             # Licença MIT\n```\n\n### 🏗️ Destaques da Arquitetura\n\n- **📁 Compatível com XDG Base Directory**: Todos os caches em `~/.cache/zsh/`, logs em `~/.local/state/`\n- **🔒 Segurança em primeiro lugar**: Chaves privadas em `~/.config/private/` (excluído do repo)\n- **⚡ Performance**: zcompile, carregamento lazy, cache inteligente\n- **🔄 Rotação Mensal do Histórico**: Formato `history-2025-09` previne inchaço\n- **🌍 Detecção de Plataforma**: Auto-adapta para Linux/WSL/MSYS2/Git-Bash\n- **🎨 Detecção True-color**: Apenas habilita recursos avançados quando suportado\n- **🧩 26 Seções Organizadas**: De profiling a info do sistema, tudo tem seu lugar\n- **⏱️ Timeouts Inteligentes**: Previne travamentos em ferramentas quebradas (yarn, gem)\n- **🚫 Sem Pip do Sistema**: Compatível com PEP 668, usa pipx para apps Python\n\n### 🤝 Contribuindo\n\nContribuições são bem-vindas! Por favor:\n\n1. **Teste em múltiplas plataformas**: Linux, WSL, MSYS2, Git-Bash\n2. **Siga a arquitetura**: Compliance XDG, fallbacks graciosos, performance em primeiro lugar\n3. **Atualize documentação**: Mantenha README.md atual com os recursos\n4. **Pensamento em segurança**: Sem chaves API no repo, permissões adequadas\n\nVeja [CONTRIBUTING.md](CONTRIBUTING.md) para diretrizes detalhadas.\n\n### 📄 Licença\n\nMIT – faça o que quiser, mas sem garantias.\nVeja `LICENSE` para detalhes.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbernardopg%2Fzshrc-config","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbernardopg%2Fzshrc-config","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbernardopg%2Fzshrc-config/lists"}