Distribuição pública e confiança¶
O Slot2Sync é distribuído para usuários sem relação técnica com o projeto, a partir de um repositório público no GitHub, sob licença GPLv3 (open source): isso abre algumas opções gratuitas de "prova de confiança" que um projeto fechado não teria (GitHub Attestations, elegibilidade a assinatura de código gratuita para FOSS), mas não resolve tudo sozinho: SmartScreen e verificação OAuth continuam exigindo os passos abaixo independente da licença. Para o usuário, confiança se traduz em três coisas concretas: a tela de consentimento do Google não mostrar aviso de "app não verificado", o instalador Windows não ser bloqueado pelo SmartScreen, e existir um canal público de contato/política de privacidade, mais, agora, a possibilidade de qualquer um auditar o código-fonte e compilar por conta própria.
Verificação OAuth do Google¶
Apps que usam OAuth do Google passam por verificação; enquanto pendente, a tela de consentimento
mostra um aviso vermelho que exige clique extra do usuário. Como o Slot2Sync usa o escopo
drive.file (não-sensível), a verificação é gratuita e simplificada (o escopo sensível drive
exigiria auditoria paga). É o item de maior impacto por menor esforço: depende só de ter domínio
próprio verificado e uma página pública de política de privacidade no ar.
SmartScreen do Windows¶
O SmartScreen opera por reputação acumulada, não por assinatura isolada: quanto mais downloads sem reclamação, menor a frequência do aviso, processo gradual, sem solução gratuita e imediata fora de uma loja de apps. Foram avaliadas as alternativas:
- Certificado de assinatura de código pago (~$70-200/ano): não elimina o aviso, só acelera a reputação, e desde 2026 nem o certificado EV mais dispensa o SmartScreen automaticamente.
- MSIX autoassinado: o usuário precisaria importar manualmente o certificado como "editor confiável", inviável para público leigo.
- SignPath Foundation (assinatura gratuita para projetos open source): agora elegível, o requisito que descartava essa opção (ser open source) passou a valer com o repositório público sob GPLv3. Não é automático: exige submeter o projeto ao programa e passar pelos critérios de aceitação deles (atividade do projeto, revisão de segurança); ainda não avaliado na prática. Se aceito, é a opção mais barata que resolve o SmartScreen sem depender da Microsoft Store.
- Microsoft Store: apps aprovados não disparam o SmartScreen, a Microsoft assina por conta própria na publicação. Continua sendo a opção mais garantida (não depende de aprovação externa de um programa de terceiros), mas tem o bloqueio técnico do MSIX descrito abaixo.
GitHub Attestations: adotado¶
actions/attest-build-provenance gera atestação SLSA assinada (Sigstore), verificável via
gh attestation verify, para cada instalador publicado no release, viável porque o
repositório é público (a verificação exige acesso de leitura ao repo, que um usuário final
comum não teria num repo privado).
Microsoft Store: estratégia alternativa, ainda não implementada¶
Resolve o SmartScreen de forma garantida no Windows (publicar deixou de ter taxa de registro em
2025/2026, tanto para conta individual quanto empresa). O bloqueio é técnico, não financeiro: a
Store só aceita pacotes MSIX, que o Tauri v2 não gera nativamente: dependeria de uma
ferramenta comunitária (tauri-windows-bundle) sem suporte declarado explicitamente ao Tauri v2,
e o Slot2Sync precisa ler pastas de outros aplicativos (%APPDATA%\PPSSPP,
%APPDATA%\PCSX2 etc.), o que dentro do contêiner virtual de filesystem do MSIX pode exigir a
capability restrita broadFileSystemAccess, sujeita a aprovação manual da Microsoft e prazo
incerto. Os passos de validação local e a proposta de job de CI para gerar o MSIX estão em
Roadmap.
A Store não resolve o aviso OAuth (item independente, acima) nem cobre macOS/Linux: para
macOS o equivalente seria a Mac App Store ou notarização paga do binário; Linux não tem aviso
equivalente ao SmartScreen. Builds .dmg/.deb/AppImage para essas plataformas já são gerados
via runners hospedados do GitHub Actions; o que falta ali é notarização/assinatura Apple e
empacotamento Flatpak, não a capacidade de compilar (ver
Referência: Status multiplataforma).