Generate desktop build icons before electron packaging #299
Labels
No labels
abandoned
active
audit
blocked
data-safety
difficulty:easy
difficulty:hard
difficulty:high
difficulty:medium
docs
done
duplicate
notebook-v0
open
priority:high
ready
release-critical
safe-mode
spec
spec-backlog
subsystem:api
subsystem:backlog
subsystem:bases
subsystem:ci
subsystem:command
subsystem:configuration
subsystem:consolidate
subsystem:dependencies
subsystem:desktop-electron
subsystem:diffmerge
subsystem:docker
subsystem:docs
subsystem:fuzzy
subsystem:graph
subsystem:hotkeys
subsystem:lapis
subsystem:maint
subsystem:maintenance
subsystem:markdown
subsystem:markdown-lint
subsystem:md018
subsystem:notebook
subsystem:notifications
subsystem:opfs
subsystem:package
subsystem:plugin-markdown
subsystem:plugin-tasks
subsystem:plugins
subsystem:registry
subsystem:release
subsystem:renovate
subsystem:restore
subsystem:scripts
subsystem:search
subsystem:settings
subsystem:spec
subsystem:tasks
subsystem:testing
subsystem:ui
subsystem:web
subsystem:workspace
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
lapis-notes/lapis#299
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Electron packaging currently logs
default Electron icon is usedfor macOS builds because required build-resource icons are not present when Electron Builder runs. The desktop package expects icons underpackages/desktop-electron/build, but the repository intentionally ignores those generated files and no generation step runs before packaging.Problem
pnpm --filter @lapis-notes/desktop-electron dist:mac:alland direct Electron Builder invocations can fall back to the default Electron icon (reason=application icon is not set) whenbuild/icon.icnsand related png assets are absent.Goal
Ensure desktop package scripts always generate required icon assets before packaging so macOS x64/arm64 and Linux x64 artifacts use branded application icons.
Scope
packages/desktop-electron/scripts/.package:dir,dist:mac,dist:mac:all,dist:linux).build/icon.png,build/icon-light.png,build/icon-dark.png, and macOSbuild/icon.icns(on macOS).Non-goals
Acceptance Criteria
build/icon.icnsfrom shared branding assets.dist:mac:allno longer emitsdefault Electron icon is usedwhen run with generated assets present.build/icon.pngwithout regressions.@lapis-notes/desktop-electronreflects how icons are produced.Implementation Notes
packages/workspace/src/assets/lapis.png.packages/desktop-electron/build/to match current ignore policy..icns, use host tooling (sips+iconutil) from a script rather than checking in binaries.Suggested Files or Specs To Inspect
packages/desktop-electron/package.jsonpackages/desktop-electron/electron-builder.config.cjspackages/desktop-electron/scripts/packages/desktop-electron/spec.mdspec/src/20-packages/desktop-electron/index.mdValidation Commands
pnpm --filter @lapis-notes/desktop-electron package:dirpnpm --filter @lapis-notes/desktop-electron dist:mac:all(macOS)pnpm --filter @lapis-notes/desktop-electron dist:linuxpnpm --filter @lapis-notes/desktop-electron check:allRelated Issues
Follow-up Tasks
Implementation Summary
Added desktop build icon generation preflight and wired package/dist scripts to regenerate icon resources before electron-builder for mac x64/arm64 and linux x64 packaging.