feat(macos): preparar distribución versionada e instalación verificable
メンテナーはふだん 1 日以内に返信
@egdev6 がすでに取り組んでいます。
2026年10月16日 から。
評価
この issue はまだ評価されていません。
説明
Pre-flight checks
- I searched existing issues and found no duplicate.
- I understand that this proposal requires product review before implementation.
El asistente revisó issues abiertas/cerradas y PR activas: #69/#112 aportan el bundle local y excluyen esta distribución; #117 cubre únicamente CI. El mantenedor confirmó expresamente la declaración de revisión de producto para ambas propuestas. No se aplica status:approved ni se asigna trabajo.
Problem to solve
La integración macOS Apple Silicon ya genera .app y .dmg localmente, pero el workflow Release sigue siendo Windows. Hace falta convertir ese bundle en una entrega versionada, trazable y realmente instalable desde una descarga, sin anunciar firma, notarización, actualizaciones automáticas o versiones de macOS no verificadas.
Proposed solution
Preparar la distribución verificable macOS reutilizando tauri.macos.conf.json y app:build:mac, tras completar #117. Separar las decisiones de confianza/distribución de la ejecución: acordar el nivel de entrega (preview sin firma frente a distribución Developer ID firmada/notarizada), el mínimo macOS y la política de instalación/actualización. Documentar los requisitos que deba proporcionar el mantenedor antes de configurar credenciales o habilitar publicación.
Para una descarga estable orientada a público general, se recomienda firma Developer ID y notarización con validación real de Gatekeeper. Si esos requisitos no están disponibles, el mantenedor debe decidir explícitamente entre aplazar la descarga Mac o una preview sin firma claramente identificada; no rebajar silenciosamente el criterio para cerrar la issue. El updater Tauri es un mecanismo separado de la firma Apple.
Affected area
Build or tooling
Scope and non-goals
Dependencias y coordinación
- Depende de #117 completada y de un candidato integrado y validado. Refs #69, #45 y #112: no rehacer el port ni crear otro instalador local.
- Antes de empezar, acordar con @barbatdev el reparto y la validación en Mac real. La mención no asigna ni presupone su disponibilidad.
- La decisión del mantenedor es completar CI y distribución verificable antes de la próxima release que anuncie una descarga Mac. No obliga a publicar Linux ni amplía #105–#108.
- #20 es firma Authenticode Windows, no autorización ni infraestructura de firma Apple.
Criterios de aceptación propuestos
- Arquitectura ARM64, mínimo macOS objetivo y matriz realmente probada aceptados. El deployment target del binario no se presenta como rango funcional validado; Intel/universal fuera de esta entrega.
- Política de entrega explícita: estable firmada/notarizada o preview sin firma aceptada como tal. Cuenta Apple Developer, certificados, servicio de notarización y sus costes/requisitos inventariados; nunca se solicitan valores privados en issues/logs.
- Plan de empaquetado/publicación revisado: reutiliza el workflow existente cuando sea compatible, preserva Windows y parte de un SHA/versiones/notas validados; artefactos y checksums trazables al mismo candidato. Ejecución manual y borrador para revisión, sin release por un push o un merge ordinario.
- Si se elige firma/notarización: verificar cadena/identidad, notarización y stapling según formato, y evaluación Gatekeeper sobre la descarga real. Secretos solo en el paso y contexto autorizados, nunca disponibles a PR de forks ni a fuentes no revisadas.
- Instalar el
.dmgdescargado y mover/abrir la app desde su destino final en un Mac real, registrando SHA, versión y entorno; probar primera apertura con cuarentena y una actualización sobre instalación anterior cuando exista. No usar la eliminación de cuarentena como sustituto de validar una entrega firmada. - Smoke del artefacto final: widget/detalle/overlay, Spaces normales, permisos Keychain, login CLI, autostart, notificaciones y atajos, con datos sensibles excluidos. Limitaciones fullscreen y de versiones no probadas publicadas honestamente.
- Updater macOS: decidir expresamente si queda deshabilitado/no soportado con actualización manual documentada, o remitir su implementación y validación a otra unidad. No prometer compatibilidad por tener minisign en Windows.
- Notas de instalación/seguridad y release ES/EN describen exactamente los assets y las limitaciones; Windows y los gates de seguridad siguen verdes. La revisión final del mantenedor acredita el cierre antes de preparar/publicar la release anunciada para Mac.
Exclusiones y autorizaciones
No App Store, Linux, Intel/universal, rediseño NSPanel/fullscreen ni mejoras de dockeo #113. Esta issue no autoriza crear certificados, modificar secretos/protecciones, gastar una suscripción, ejecutar firma/notarización, crear tags, lanzar Release o publicar assets. Cada operación requiere su aprobación concreta; crear la issue tampoco autoriza implementación ni asignación. No se impone completar updater ni audio/i18n pendientes para validar el alcance acordado de esta entrega.
Alternatives considered
Publicar únicamente Windows y mantener el port Mac como código/bundle local: válido si se comunica así, pero no satisface el objetivo de una descarga Mac verificable. Subir el .dmg personal de un contribuidor: insuficiente sin trazabilidad y prueba del artefacto final. Fusionar todo con #69 o #117: duplicaría el bundle ya integrado y mezclaría CI sin secretos con distribución y credenciales. Se crea esta unidad separada con gates explícitos.
- 主要言語
- TypeScript
- スター
- 10
- フォーク
- 2
- 平均マージ
- 3時間 22分
- マージ済み PR(30日)
- 87
環境構築
このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
egdev6/quorb のほかの issue
-
type:chore
難易度 4/5 3〜5日 初心者へのやさしさ 42/100
メンテナーはふだん 1 日以内に返信
-
status:approved type:feature
難易度 4/5 3〜5日 初心者へのやさしさ 35/100
メンテナーはふだん 1 日以内に返信
-
feat(widget): dockear al monitor principal por defecto y avisar si el widget queda en otro displayオープン
難易度 3/5 1〜2日 初心者へのやさしさ 35/100
メンテナーはふだん 1 日以内に返信
-
odd type:feature
難易度 5/5 1週間以上 初心者へのやさしさ 15/100
メンテナーはふだん 1 日以内に返信
-
feat(linux): hacer funcional el escritorio y widget nativos対応中かも このイシューにリンクされたプルリクエストがオープン中、またはマージ済みです。 オープンodd type:feature
難易度 4/5 3〜5日 初心者へのやさしさ 15/100
メンテナーはふだん 1 日以内に返信
似ている issue
-
frontend
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
メンテナーはふだん 1 日以内に返信
-
難易度 1/5 1時間未満 初心者へのやさしさ 86/100
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
ranxianglei/billion-context#4172 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
awslabs/threat-composer#362 ·
メンテナーはふだん 1 日以内に返信
-
Area/Cloud Needs Triage Type/Bug
難易度 1/5 1〜3時間 初心者へのやさしさ 86/100
wso2/product-integrator#2847 ·
メンテナーはふだん 1 日以内に返信