Linux: Fix X11 app icon by updating desktopName and wm_class

This commit is contained in:
ayumi-signal
2025-10-15 13:04:01 -07:00
committed by GitHub
parent 469e6dc39a
commit 6ed97e5e60
5 changed files with 14 additions and 8 deletions

View File

@@ -56,12 +56,16 @@ const APP_ID_PATH = 'build.appId';
const PRODUCTION_APP_ID = 'org.whispersystems.signal-desktop';
const ADHOC_APP_ID = `org.whispersystems.signal-desktop-adhoc-${formattedDate}-${shortSha}`;
const STARTUP_WM_CLASS_PATH = 'build.linux.desktop.entry.StartupWMClass';
const PRODUCTION_WM_CLASS = 'signal';
const ADHOC_WM_CLASS = `signal adhoc ${formattedDate}.${shortSha}`;
const DESKTOP_NAME_PATH = 'desktopName';
// Note: we're avoiding dashes in our .desktop name due to xdg-settings behavior
// https://github.com/signalapp/Signal-Desktop/issues/3602
const PRODUCTION_DESKTOP_NAME = 'signal.desktop';
const ADHOC_DESKTOP_NAME = `signaladhoc.${formattedDate}.${shortSha}.desktop`;
const ADHOC_DESKTOP_NAME = `signal adhoc.${formattedDate}.${shortSha}.desktop`;
// -------
@@ -77,6 +81,7 @@ function checkValue(object, objectPath, expected) {
checkValue(packageJson, NAME_PATH, PRODUCTION_NAME);
checkValue(packageJson, PRODUCT_NAME_PATH, PRODUCTION_PRODUCT_NAME);
checkValue(packageJson, APP_ID_PATH, PRODUCTION_APP_ID);
checkValue(packageJson, STARTUP_WM_CLASS_PATH, PRODUCTION_WM_CLASS);
checkValue(packageJson, DESKTOP_NAME_PATH, PRODUCTION_DESKTOP_NAME);
// -------
@@ -84,6 +89,7 @@ checkValue(packageJson, DESKTOP_NAME_PATH, PRODUCTION_DESKTOP_NAME);
_.set(packageJson, NAME_PATH, ADHOC_NAME);
_.set(packageJson, PRODUCT_NAME_PATH, ADHOC_PRODUCT_NAME);
_.set(packageJson, APP_ID_PATH, ADHOC_APP_ID);
_.set(packageJson, STARTUP_WM_CLASS_PATH, ADHOC_WM_CLASS);
_.set(packageJson, DESKTOP_NAME_PATH, ADHOC_DESKTOP_NAME);
// -------

View File

@@ -43,7 +43,7 @@ const DESKTOP_NAME_PATH = 'desktopName';
// Note: we're avoiding dashes in our .desktop name due to xdg-settings behavior
// https://github.com/signalapp/Signal-Desktop/issues/3602
const PRODUCTION_DESKTOP_NAME = 'signal.desktop';
const ALPHA_DESKTOP_NAME = 'signalalpha.desktop';
const ALPHA_DESKTOP_NAME = 'signal alpha.desktop';
// -------

View File

@@ -36,14 +36,14 @@ const AXOLOTL_APP_ID = 'org.whispersystems.signal-desktop-axolotl';
const STARTUP_WM_CLASS_PATH = 'build.linux.desktop.entry.StartupWMClass';
const PRODUCTION_WM_CLASS = 'signal';
const AXOLOTL_WM_CLASS = 'signalaxolotl';
const AXOLOTL_WM_CLASS = 'signal axolotl';
const DESKTOP_NAME_PATH = 'desktopName';
// Note: we're avoiding dashes in our .desktop name due to xdg-settings behavior
// https://github.com/signalapp/Signal-Desktop/issues/3602
const PRODUCTION_DESKTOP_NAME = 'signal.desktop';
const AXOLOTL_DESKTOP_NAME = 'signalaxolotl.desktop';
const AXOLOTL_DESKTOP_NAME = 'signal axolotl.desktop';
// -------

View File

@@ -35,14 +35,14 @@ const BETA_APP_ID = 'org.whispersystems.signal-desktop-beta';
const STARTUP_WM_CLASS_PATH = 'build.linux.desktop.entry.StartupWMClass';
const PRODUCTION_WM_CLASS = 'signal';
const BETA_WM_CLASS = 'signalbeta';
const BETA_WM_CLASS = 'signal beta';
const DESKTOP_NAME_PATH = 'desktopName';
// Note: we're avoiding dashes in our .desktop name due to xdg-settings behavior
// https://github.com/signalapp/Signal-Desktop/issues/3602
const PRODUCTION_DESKTOP_NAME = 'signal.desktop';
const BETA_DESKTOP_NAME = 'signalbeta.desktop';
const BETA_DESKTOP_NAME = 'signal beta.desktop';
// -------

View File

@@ -39,14 +39,14 @@ const STAGING_APP_ID = 'org.whispersystems.signal-desktop-staging';
const STARTUP_WM_CLASS_PATH = 'build.linux.desktop.entry.StartupWMClass';
const PRODUCTION_WM_CLASS = 'signal';
const STAGING_WM_CLASS = 'signalstaging';
const STAGING_WM_CLASS = 'signal staging';
const DESKTOP_NAME_PATH = 'desktopName';
// Note: we're avoiding dashes in our .desktop name due to xdg-settings behavior
// https://github.com/signalapp/Signal-Desktop/issues/3602
const PRODUCTION_DESKTOP_NAME = 'signal.desktop';
const STAGING_DESKTOP_NAME = 'signalstaging.desktop';
const STAGING_DESKTOP_NAME = 'signal staging.desktop';
// -------