Sistema de dotfiles unificado com instalador CLI moderno usando Python 3.13, uv/uvx para gerenciamento de pacotes, Rich para interface terminal e suporte inteligente para múltiplos sistemas operacionais e window managers.
- Python 3.13+
- Git
- curl/wget
git clone https://github.com/seu-usuario/dotfiles ~/.dotfiles
cd ~/.dotfiles
python install_cli.py install# Instalação completa (recomendado)
python install_cli.py install --mode full
# Apenas configurações (sem pacotes do sistema)
python install_cli.py install --mode config-only
# Apenas ferramentas Python de desenvolvimento
python install_cli.py install --mode python-dev
# Apenas configurações de shell (ZSH)
python install_cli.py install --mode shell-setup
# Instalação forçada (sem confirmações)
python install_cli.py install --force
# Pular instalação de pacotes do sistema
python install_cli.py install --skip-system# Verificar sistema detectado e ferramentas instaladas
python install_cli.py status# Criar backup das configurações atuais
python install_cli.py backup# Atualizar dotfiles e reinstalar configurações
python install_cli.py update# Visualizar logs recentes de instalação
python install_cli.py logs# Ver todos os comandos disponíveis
python install_cli.py --help
# Ajuda de comando específico
python install_cli.py install --helpO sistema detecta automaticamente:
- Arch Linux (incluindo Manjaro, EndeavourOS)
- Debian/Ubuntu (incluindo Pop!_OS, Linux Mint)
- NixOS
- Windows 11 (PowerShell)
- i3/i3-gaps - Tiling window manager clássico
- Sway - Compositor Wayland compatível com i3
- Hyprland - Compositor Wayland moderno com animações
- Qtile - Window manager configurável em Python
- GNOME - Desktop environment popular
- XFCE - Desktop environment leve
Instaladas automaticamente via uvx:
- black - Formatador de código
- isort - Organizador de imports
- mypy - Type checker
- pytest - Framework de testes
- poetry - Gerenciador de dependências
- pre-commit - Git hooks
- ruff - Linter e formatador rápido
dotfiles/
├── install_cli.py # 🎯 CLI principal moderno
├── mcp/ # 🤖 Model Context Protocol
│ ├── claude-desktop.json # Configuração completa MCP
│ ├── claude-dev.json # Configuração para desenvolvimento
│ ├── claude-research.json # Configuração para pesquisa
│ ├── mcp_manager.py # CLI para gerenciar MCP servers
│ ├── .env-example # Variáveis de ambiente
│ └── README.md # Documentação MCP
├── utils/ # 🔧 Utilitários e logging
│ ├── logger.py # Sistema de logging avançado
│ ├── backup.py # Utilitários de backup
│ └── utils.py # Funções auxiliares
├── setup/ # 📦 Scripts de instalação por OS
│ ├── linux/
│ │ ├── arch/install.sh
│ │ ├── debian/install.sh
│ │ └── nixos/configuration.nix
│ └── windows/install.ps1
├── wm/ # 🪟 Configurações Window Managers
│ ├── i3/
│ ├── sway/
│ ├── hyprland/
│ ├── qtile/
│ ├── gnome/
│ └── xfce/
├── shells/ # 🐚 Configurações de shells
│ ├── zsh/
│ │ ├── .zshrc
│ │ ├── plugins/
│ │ └── scripts/
│ └── bash/
├── home/ # 🏠 Configurações pessoais
│ ├── .config/
│ │ ├── nvim/
│ │ ├── git/
│ │ └── rofi/
│ └── scripts/
├── rofi/ # 🎨 Scripts Rofi modernos
│ └── scripts/
│ ├── launcher.sh
│ ├── powermenu.sh
│ ├── screenshot.sh
│ └── workspace-manager.sh
└── docker/ # 🐳 Configurações Docker
└── docker-compose/
```## 🤖 MCP (Model Context Protocol)
Sistema completo para integração com Claude Desktop e outros clientes MCP:
### Configurações Disponíveis
- **claude-desktop.json** - Configuração completa com todos os servidores MCP
- **claude-dev.json** - Focado em desenvolvimento (filesystem, git, database)
- **claude-research.json** - Focado em pesquisa (web scraping, fetch, brave)
### Gerenciamento MCP
```bash
# Gerenciar servidores MCP
python mcp/mcp_manager.py --help
# Instalar servidor MCP específico
python mcp/mcp_manager.py install filesystem
# Listar servidores disponíveis
python mcp/mcp_manager.py list
# Verificar status
python mcp/mcp_manager.py status
- Auto-detecta terminal e file manager
- Comandos de desenvolvimento Python integrados
- Notificações visuais
- Suporte para aplicações desktop
- Auto-detecta window manager ativo
- Opções completas: shutdown, reboot, suspend, hibernate, logout, lock
- Interface com emojis
- Múltiplos modos: área, janela, tela completa
- Auto-save em ~/Pictures/Screenshots/
- Suporte Wayland (grim+slurp) e X11 (scrot)
- Navegação rápida entre workspaces
- Suporte multi-WM (i3, Sway, Hyprland)
- Visualização de status
- Configuração otimizada com gaps
- Integração com polybar
- Scripts de automação incluídos
- Teclas de atalho modernas
- Versão Wayland do i3
- Suporte completo para HiDPI
- Scripts Wayland-nativos
- Animações suaves configuradas
- Configuração de performance otimizada
- Integração com waybar
- Configuração Python avançada
- Layouts inteligentes
- Widgets customizados
O sistema inclui logging avançado com:
- Logs coloridos no terminal via Rich
- Arquivo de log detalhado em
~/.local/log/dotfiles/ - Tracking de comandos executados
- Métricas de instalação (tempo, erros, sucessos)
- Backup automático de configurações
# Logs recentes no terminal
python install_cli.py logs
# Arquivo de log completo
cat ~/.local/log/dotfiles/dotfiles_installer_$(date +%Y%m%d).log# Criar backup das configurações atuais
python install_cli.py backup# Atualizar repositório e reinstalar
python install_cli.py update# Limpeza e atualizações do sistema
./maintenance.sh
# Verificação de integridade
python utils/backup.py --check# Instalar apenas ferramentas de desenvolvimento
python install_cli.py install --mode python-dev
# Inclui: black, isort, mypy, pytest, poetry, pre-commit, ruff# Instalação completa com window manager
python install_cli.py install --mode full
# Detecta e configura automaticamente o WM ativo# Apenas configurações de shell e utilitários
python install_cli.py install --mode shell-setup --skip-system# Apenas aplicar configurações (sem instalar pacotes)
python install_cli.py install --mode config-only --force# Instalar uv manualmente
curl -LsSf https://astral.sh/uv/install.sh | sh# Executar com sudo se necessário para criar symlinks
sudo python install_cli.py install --mode config-only# Verificar detecção do sistema
python install_cli.py status
# Configurar manualmente
export XDG_CURRENT_DESKTOP=i3
python install_cli.py install# Ver logs detalhados
python install_cli.py logs
# Arquivo de log completo
tail -f ~/.local/log/dotfiles/dotfiles_installer_$(date +%Y%m%d).log- Fork o repositório
- Crie uma branch para sua feature (
git checkout -b feature/nova-funcionalidade) - Commit suas mudanças (
git commit -am 'Adiciona nova funcionalidade') - Push para a branch (
git push origin feature/nova-funcionalidade) - Abra um Pull Request
feat:Nova funcionalidadefix:Correção de bugdocs:Atualização de documentaçãostyle:Formatação de códigorefactor:Refatoração de códigotest:Adição/correção de testes
Este projeto está sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.
Dotfiles modernos com instalação inteligente e interface rica! 🚀
Para mais informações, consulte: