build: desktopName + Linux snap channel config

electron-builder emits a pack-time warning on every Linux build that
desktopName is unset, which means the installed .desktop entry can't
be matched to a running window by most desktop environments (no
WM_CLASS / app_id link, so clicking the launcher icon while the app
is open does not raise / focus the window).

  - package.json: add top-level 'desktopName': 'MarkdownConverter'
    so Electron exposes the same value as its X11/Wayland window
    class and the .desktop file matches it.
  - electron-builder.config.js: mirror it under linux.* with
    syncDesktopName: true so the generated .desktop / .deb / snap
    entries all use the same identifier.
  - Add snap channel 'latest/edge' so the auto-updater feed from
    GitHub releases maps to a track snapd recognises. 'stable' would
    publish to a manually-managed channel and break the updater.

No source code changes; build only. Verified electron-builder accepts
the new keys without warnings on next pack.

Amit Haridas
This commit is contained in:
2026-09-30 22:09:19 +05:30
parent 48c7420c7a
commit 41ddaa17b3
2 changed files with 14 additions and 0 deletions
+13
View File
@@ -125,6 +125,19 @@ module.exports = {
category: 'Utility',
maintainer: 'ConcreteInfo <amit.wh@gmail.com>',
extraFiles: toolExtraFiles('linux'),
// v4.13.0 — set desktopName + sync so installed .desktop entry uses
// a stable WM_CLASS / app_id, otherwise DEs cannot link the running
// window to the launcher icon (electron-builder warning at pack time).
desktopName: 'MarkdownConverter',
syncDesktopName: true,
// Snap channel: latest/edge tracks the auto-updater feed on GitHub
// releases. `stable` would publish to a manually-managed channel and
// break the electron-updater handshake.
snap: {
confinement: 'strict',
grade: 'stable',
channels: ['latest/edge'],
},
},
deb: {
depends: ['imagemagick', 'libreoffice-common'],
+1
View File
@@ -3,6 +3,7 @@
"version": "4.13.0",
"description": "Professional Markdown editor and universal file converter with PDF editing, batch processing, and syntax highlighting",
"main": "src/main.js",
"desktopName": "MarkdownConverter",
"scripts": {
"start": "electron .",
"test": "cross-env NODE_OPTIONS=--experimental-vm-modules jest",