Skip to content

feat: add full support for Arch Linux (pacman) - #17

Open
Carlosredoan wants to merge 2 commits into
promovaweb:mainfrom
Carlosredoan:feature/arch-linux-support
Open

feat: add full support for Arch Linux (pacman)#17
Carlosredoan wants to merge 2 commits into
promovaweb:mainfrom
Carlosredoan:feature/arch-linux-support

Conversation

@Carlosredoan

Copy link
Copy Markdown

Fala Luiz! Vi o seu vídeo sobre o SetupVibe e resolvi contribuir adicionando o suporte nativo ao Arch Linux (e derivados como o CachyOS) no script desktop.sh.

Resumo das modificações:

  • Adicionada a detecção e uso do pacman nos Steps 8 (Modern Unix Tools) e 12 (Tmux).
  • Correção do serviço de cron para o padrão do Arch (cronie).
  • Código testado e validado em ambiente isolado via Docker.

Espero que ajude o projeto!

@luizeof

luizeof commented Apr 5, 2026

Copy link
Copy Markdown
Contributor

@Carlosredoan ficou 10, muito obrigado!

posso fazer uma sugestão? troque o if por um switch, aí a gente deixa mais modular ainda. o que acha?

@Carlosredoan

Copy link
Copy Markdown
Author

Valeu, Luiz! Fico feliz que tenha gostado.

Concordo 100% com a sugestão de usar o switch (case), vai deixar a estrutura bem mais limpa e modular mesmo. Vou fazer essa refatoração e já aproveito para resolver os conflitos que apareceram no desktop.sh.

@Carlosredoan

Copy link
Copy Markdown
Author

Fala, Luiz! Tudo certo. Refatoração feita: apliquei o switch/case nos gerenciadores de pacote como você sugeriu e já deixei os conflitos de merge resolvidos. O PR tá verdinho e pronto pra sua revisão.

luizeof commented Jul 18, 2026

Copy link
Copy Markdown
Contributor

Olá, @Carlosredoan! Obrigado novamente pela contribuição e pela refatoração para case que você já realizou.

A branch chegou a ficar sem conflitos, mas a main avançou desde então e o GitHub voltou a marcar o PR como conflitante. A simulação atual aponta conflito somente em desktop.sh, então é possível preservar a proposta sem refazer todo o trabalho.

Você poderia, por favor, atualizar a branch e adaptar o suporte ao Arch à estrutura atual? O caminho mais seguro é:

git fetch https://github.com/promovaweb/setupvibe.git main
git rebase FETCH_HEAD

Ao resolver desktop.sh, peço que use a versão da main como base e reaplique apenas os blocos necessários ao Arch/CachyOS:

  • detecção por /etc/os-release, definição de PKG_MANAGER e ramificações com case;
  • pacotes equivalentes nas etapas existentes, sem renumerar ou substituir as 14 etapas atuais;
  • preservação das versões centralizadas atuais (PHP_VERSION, RUBY_VERSION, PYTHON_VERSION, GO_VERSION e NERD_FONTS_VERSION);
  • preservação da limpeza de APT por nomes explícitos de arquivos gerenciados pelo SetupVibe;
  • preservação integral da step_12() de Tmux/TPM: remova o placeholder # ... (mantenha o restante...) e acrescente apenas a instalação via pacman onde necessário;
  • preservação da configuração atual de SSH, especialmente PermitRootLogin prohibit-password; o suporte ao Arch não deve reintroduzir login root por senha;
  • evitar remoções e refatorações não relacionadas à compatibilidade com Arch, pois elas ampliam bastante o risco do merge.

Depois de resolver:

git add desktop.sh
git rebase --continue
bash -n desktop.sh
git push --force-with-lease

Como a lista de plataformas suportadas muda, atualize também AGENTS.md e CLAUDE.md de forma sincronizada e a documentação Desktop nos idiomas existentes, seguindo MARKDOWN.md.

Agradeço novamente pela colaboração e por ajudar a ampliar o suporte do SetupVibe!

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.

2 participants