Publicar temas Artes do Sul (GitHub)

Checklist para release e, opcionalmente, envio ao ecossistema Oh My Posh.

1. Repo atual (artesdosul/artesdosul)

Os temas vivem em themes/. Não precisa de repo separado para uso interno.

  1. Validar JSON localmente ou via CI (validate-themes)
  2. Commit em branch (ex.: themes/oh-my-posh)
  3. PR → main
  4. Após merge, URLs raw estáveis:
https://raw.githubusercontent.com/<org>/<repo>/main/themes/oh-my-posh/<arquivo>.omp.json

Instalação one-liner (Windows):

oh-my-posh init pwsh --config "https://raw.githubusercontent.com/artesdosul/artesdosul/main/themes/oh-my-posh/artesdosul-windows.omp.json" | Invoke-Expression

2. Regras do repositório (obrigatórias)

Regra Detalhe
Sem segredos Só JSON/scripts/docs em themes/
JSON válido schema Oh My Posh v3 ($schema + "version": 3)
Nome estável Prefixo artesdosul-*.omp.json; não renomear sem redirect na docs
Preview Antes do PR: oh-my-posh print primary --config <file> --pwd $PWD
Nerd Font Documentar fonte requerida no README
SO Manter par windows / linux em sync de paleta (só segmentos diferem)
Sem commit de $PROFILE Scripts só editam perfil do usuário local
Home Assistant themes/home-assistant/artes-do-sul.yaml; chave estável Artes do Sul
Editores themes/editors/; labels estáveis Artes do Sul Dark e Artes do Sul Light

3. PR template (copiar)

## Temas
- [ ] JSON valida (workflow `validate-themes`)
- [ ] Testado no Windows Terminal / Linux ou WSL
- [ ] README/catálogo atualizado se novo tema
- [ ] Sem alteração de paleta de marca sem acordo (#FF7F50 / #691345)

## Test plan
- [ ] `oh-my-posh config export` / print primary ok
- [ ] Git dirty prioriza amarelo
- [ ] Linguagens só aparecem com arquivos do ecossistema

4. Repo dedicado (opcional, futuro)

Se extrair para artesdosul/oh-my-posh-themes:

oh-my-posh-themes/
  README.md
  LICENSE          # MIT
  themes/*.omp.json
  install/
  .github/workflows/validate.yml
  • Topics GitHub: oh-my-posh, prompt, theme, powershell, zsh
  • Release: tag v1.0.0 + attach JSON
  • README com badges e screenshots (WT + gnome-terminal)

5. Contribuição upstream Oh My Posh (opcional)

Upstream: JanDeDobbeleer/oh-my-posh → pasta themes/.

Requisitos típicos da comunidade:

  1. Um arquivo .omp.json por tema (nome kebab-case)
  2. Licença compatível (MIT)
  3. Screenshot no PR
  4. Sem dependências locais (só config)
  5. Seguir CONTRIBUTING do projeto

Sugestão: enviar só artesdosul.omp.json (default) + menção às variantes no nosso README.

6. Versionamento

  • SemVer nos releases do pacote de temas: themes 1.x.y
  • Breaking (renomear arquivo / quebrar URL raw) = major
  • Nova variante = minor
  • Ajuste de cor/template = patch

Bump opcional em themes/VERSION ao publicar.

7. Não fazer

  • Commitar docs/ só por causa de temas (Jekyll copia static; ok se quiser download no site, senão excluir themes/ do build)
  • Forçar push / amend em main
  • Misturar mudança de tema com rebuild gigante de docs/ no mesmo commit (preferir PR focado)