Skip to main content

CLI installer tooling for Accessible Emacs (emacs-a11y).

Project description

emacs-a11y-installer

Instalador multiplataforma para o Emacs Acessível, com foco em acessibilidade estrutural, operação por teclado e diagnósticos em modo somente leitura.

Para que serve

O projeto ajuda você a validar o ambiente antes de instalar ou ajustar o Emacs Acessível, reduzindo falhas e tornando o processo mais previsível.

Hoje, a principal funcionalidade disponível é o comando de diagnóstico doctor, com saída textual acessível e saída JSON para automação/suporte.

Instalação rápida

One-liner para usuários finais

Unix (bash)

curl -fsSL https://raw.githubusercontent.com/A11yDevs/emacs-a11y-installer/main/scripts/install-emacs-a11y.sh | bash

O instalador Unix usa pipx quando disponivel e cai para pip --user como fallback. Funciona em Linux e macOS com Python 3.11+.

Windows (PowerShell)

iwr -useb https://raw.githubusercontent.com/A11yDevs/emacs-a11y-installer/main/scripts/install-emacs-a11y.ps1 | iex

Instalar uma versão especifica:

EMACS_A11Y_VERSION=0.1.2 curl -fsSL https://raw.githubusercontent.com/A11yDevs/emacs-a11y-installer/main/scripts/install-emacs-a11y.sh | bash
$env:EMACS_A11Y_VERSION = "v0.1.1"; iwr -useb https://raw.githubusercontent.com/A11yDevs/emacs-a11y-installer/main/scripts/install-emacs-a11y.ps1 | iex

Opção recomendada para usuários técnicos (pipx)

pipx install emacs-a11y-installer

Ou, antes de publicar no PyPI, diretamente do GitHub:

pipx install "git+https://github.com/A11yDevs/emacs-a11y-installer.git"

Opção para desenvolvimento local

python -m pip install -e .

Uso básico

Modo interativo contextual

emacs-a11y

Ao abrir sem argumentos, a CLI entra no contexto raiz emacs-a11y> e mostra a ajuda do contexto automaticamente.

Diagnóstico textual (somente leitura)

emacs-a11y doctor

Diagnóstico JSON (somente leitura)

emacs-a11y doctor --json

Segurança e não destrutividade

No escopo atual de diagnóstico, a ferramenta:

  • não instala pacotes;
  • não altera arquivos de configuração;
  • não baixa binários;
  • não altera PATH;
  • não solicita privilégios administrativos.

Estratégia de distribuição

  • Formato canônico: pacote Python multiplataforma.
  • Instalação preferencial para usuários técnicos: pipx ou pip.
  • Distribuição opcional para usuários finais no Windows: executável autônomo emacs-a11y.exe, com runtime Python embutido.

Gerar executável para Windows (.exe)

Opção recomendada: GitHub Actions

Este repositório inclui o workflow .github/workflows/build-windows-exe.yml.

Como usar:

  1. Abra a aba Actions no GitHub.
  2. Execute o workflow Build Windows Executable manualmente (workflow_dispatch) ou publique uma tag v*.
  3. Baixe o artefato emacs-a11y-windows-x64 ao final do job.

Opção local (em máquina Windows)

No PowerShell, dentro do repositório:

./scripts/build-windows-exe.ps1 -Clean

Saída esperada:

  • dist/emacs-a11y.exe

CI/CD de releases

Este repositório inclui o workflow .github/workflows/release-installers.yml que publica assets finais por release e envia o pacote Python automaticamente ao PyPI:

  • Windows (windows-x64): executável standalone em .zip
  • Wheel Python portável (py3-none-any)
  • Sdist (tar.gz) com código-fonte

Como publicar uma release:

  1. Crie e publique uma tag no formato v* (ex.: v0.2.0).
  2. O workflow compila o executável Windows e gera wheel + sdist do pacote Python.
  3. O pipeline publica:
  • emacs-a11y-<tag>-windows-x64.zip
  • emacs_a11y_installer-<versao>-py3-none-any.whl
  • emacs_a11y_installer-<versao>.tar.gz
  1. A release também inclui o arquivo SHA256SUMS.txt para verificação.
  2. Em tags v*, o workflow também publica o pacote Python no PyPI via Trusted Publishing.

Observação:

  • O workflow build-windows-exe.yml continua disponível para builds manuais ad-hoc apenas de Windows.
  • Para a automação do PyPI funcionar, é preciso cadastrar este repositório e o workflow como Trusted Publisher no projeto do PyPI.

Documentação

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

emacs_a11y_installer-0.1.2.tar.gz (221.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

emacs_a11y_installer-0.1.2-py3-none-any.whl (54.7 kB view details)

Uploaded Python 3

File details

Details for the file emacs_a11y_installer-0.1.2.tar.gz.

File metadata

  • Download URL: emacs_a11y_installer-0.1.2.tar.gz
  • Upload date:
  • Size: 221.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for emacs_a11y_installer-0.1.2.tar.gz
Algorithm Hash digest
SHA256 94011b8ce33f25b7ca2e4982d93d47d3f4f997993a9f6c049880b81523d023b1
MD5 9dffd152ff6b8e0c9ea522434d5a496e
BLAKE2b-256 fd0fc9af23161b05e63b0c0ed235df8b74e9a4f370dfd674e8f16fbe5abd6797

See more details on using hashes here.

Provenance

The following attestation bundles were made for emacs_a11y_installer-0.1.2.tar.gz:

Publisher: release-installers.yml on A11yDevs/emacs-a11y-installer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file emacs_a11y_installer-0.1.2-py3-none-any.whl.

File metadata

File hashes

Hashes for emacs_a11y_installer-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 a5f6a28d46c7727d1122dc36f8cc2a1630104eabf1eb09e5e0c670edb93a6395
MD5 d835a1ee53c5a675760a03d5b1c08485
BLAKE2b-256 d5ce6224c3108cbf84e070d1deb67921ad93c48db222f1df06a16c552c44fada

See more details on using hashes here.

Provenance

The following attestation bundles were made for emacs_a11y_installer-0.1.2-py3-none-any.whl:

Publisher: release-installers.yml on A11yDevs/emacs-a11y-installer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page