electron-builder.yml
Rama master · réplica de lectura del repositorio original.
# Desktop installers (npm run desktop:dist): Linux AppImage + .deb, built by
# the CI workflow in .github/workflows/desktop.yml. Windows is distributed
# only through the Microsoft Store (npm run desktop:store, built by hand on a
# Windows PC, see RELEASING.md); the win: section below exists only to give
# that package an icon, not to build a Windows installer.
appId: com.appblips.desktop
productName: AppBlips
copyright: Copyright © 2026 TechMitten
directories:
output: dist-desktop
buildResources: build
# The renderer is pre-bundled in dist/ and the main process (with the server
# handlers and electron-updater) in dist-electron/ (scripts/build-electron.js),
# so no node_modules ship in the app.
files:
- dist/**
- dist-electron/**
- electron/preload.cjs
- build/icon.png
- package.json
- "!**/node_modules/**"
npmRebuild: false
nodeGypRebuild: false
win:
icon: build/icon.png
# Microsoft Store package (npm run desktop:store, on a Windows PC). Never part
# of npm run release or CI: it's built locally and uploaded to Partner Center
# by hand, and the Store signs it, so it needs no certificate.
# The tile images are build/appx/*.png, made from build/icon.svg (as is
# build/icon.png) by scripts/appx-icons.sh (rerun it after changing the
# icon). The identity
# values come from Partner Center → the app → Product identity and must match
# it exactly, or the upload is rejected. The package is unsigned (the Store
# signs it), so Windows won't install the file directly; to test it, turn on
# Developer Mode, unzip it and run
# Add-AppxPackage -Register <folder>\AppxManifest.xml.
appx:
identityName: TechMitten.AppBlips # Package/Identity/Name
publisher: CN=ADD5F838-06D7-4CA2-AAEB-75AF269F2969 # Package/Identity/Publisher
publisherDisplayName: TechMitten # Package/Properties/PublisherDisplayName
applicationId: AppBlips
displayName: AppBlips
# The icon's own background color, so Windows doesn't frame it in the accent color.
backgroundColor: "#0A0A0A"
languages: [en-US]
# Electron needs Windows 10 1809 (build 17763) or later; electron-builder's
# default (14316) would offer it to Windows versions it can't run on.
minVersion: 10.0.17763.0
maxVersionTested: 10.0.26100.0
# Voice input records the microphone; without this Windows blocks it for
# Store installs.
capabilities: [microphone]
artifactName: AppBlips-Store-${version}.${ext}
linux:
target:
- target: AppImage
arch: [x64]
- target: deb
arch: [x64]
category: Development
# Add a contact address ("Name <email>") before publishing .deb packages.
maintainer: TechMitten
syncDesktopName: true
# One PNG per size (build/icons/NxN.png, made by scripts/appx-icons.sh). The
# .deb installs each into /usr/share/icons/hicolor/NxN/apps/; given only the
# 1024px icon it installs just a 1024x1024 one, a size the hicolor theme
# doesn't have, so the launcher and taskbar fall back to a generic icon.
icon: build/icons
synopsis: Turn a text prompt into a working app, website or game.
artifactName: AppBlips-${version}-${arch}.${ext}
# The public key of the APT repository (apt-repo.yml), so the .deb can add
# the package source offline when the user agrees (see deb: below).
extraResources:
- from: build/linux/appblips.gpg
to: appblips.gpg
# Installing the .deb asks whether to add the AppBlips apt source (a debconf
# question: build/linux/templates + config), and after-install.tpl adds it on
# yes. The two .tpl files are electron-builder's own after-install/after-remove
# scripts (node_modules/app-builder-lib/templates/linux) plus the apt part, so
# re-copy them when upgrading electron-builder. If the signing key is ever
# replaced, replace build/linux/appblips.gpg with the new appblips.gpg from the
# APT repository.
deb:
afterInstall: build/linux/after-install.tpl
afterRemove: build/linux/after-remove.tpl
fpm:
- --deb-templates=build/linux/templates
- --deb-config=build/linux/config
- --depends=debconf (>= 0.5) | debconf-2.0
# Where electron-updater looks for new versions (Windows and AppImage builds
# update themselves; see electron/updater.js). Builds never upload by
# themselves (--publish never): the Desktop workflow attaches the installers
# and latest*.yml files to a draft release, which updates go out from once
# it is published.
publish:
provider: github
owner: TechMitten
repo: app-blips