1
0
element-desktop/remove-fuses.patch
Dominik Heidler 00c3f7aae2 Accepting request 1174684 from home:dziobian:gulgul-ultron:19
- Use bundled sqlcipher to work around symbol collision through mozilla-nss
  (gh#sqlcipher/sqlcipher#385)
- Ship app unpacked instead of using asar
- Remove development-only files that should not be shipped (bsc#1224133)
- prepare.sh:
  * Ship dependencies as node_modules tree for patching possibility
    (yarn offline does not support patching)
  * Work around non-reproducible hakModules dependencies
    (gh#element-hq/element-desktop#1634) (hak-remove-devdependencies.patch)
  * Remove non-free binaries from archive
  * Remove vendored openssl copy from archive
  * Put everything into one archive
- Use correct CFLAGS and RUSTFLAGS
  * add cc-link-lib-no-static.patch
- Fix various build errors with electron-builder
  * 7za-path.patch
  * remove-fuses.patch
- BuildRequire app-builder instead of using a non-free binary
- Add standard Electron module load %check
- Clean up unneeded BuildRequires
- Drop unused electron-web source copy
- Fix build error on ix86 and arm
- Fix unresolvable build on Fedora

OBS-URL: https://build.opensuse.org/request/show/1174684
OBS-URL: https://build.opensuse.org/package/show/devel:languages:nodejs/element-desktop?expand=0&rev=58
2024-05-17 11:13:00 +00:00

36 lines
1.9 KiB
Diff

It is impossible to monkeypatch a shared copy of Electron, and in current versions of the nodejs-electron package
we intentionally fail the build of any app which tries to do this to alert the packager.
One problematic fuse which may break user data compatibility with upstream binaries is cookie encryption.
If a user runs an app with fused electron and then with unfused one, their cookies will get deleted.
OBSERVATION(dziobian):
Element creates a cookies sqlite database on startup but seems to never write anything to it.
Deleting the database manually seemed to have no effect.
--- element-desktop-1.11.65/electron-builder.ts.orig 2024-04-23 15:14:00.000000000 +0200
+++ element-desktop-1.11.65/electron-builder.ts 2024-05-16 18:51:14.513871208 +0200
@@ -75,22 +75,6 @@ const config: Writable<Configuration> =
const electronBinaryPath = path.join(context.appOutDir, `${executableName}${ext}`);
console.log(`Flipping fuses for: ${electronBinaryPath}`);
- await flipFuses(electronBinaryPath, {
- version: FuseVersion.V1,
- resetAdHocDarwinSignature: context.electronPlatformName === "darwin" && context.arch === Arch.universal,
-
- [FuseV1Options.EnableCookieEncryption]: true,
- [FuseV1Options.OnlyLoadAppFromAsar]: true,
-
- [FuseV1Options.RunAsNode]: false,
- [FuseV1Options.EnableNodeOptionsEnvironmentVariable]: false,
- [FuseV1Options.EnableNodeCliInspectArguments]: false,
-
- // Mac app crashes on arm for us when `LoadBrowserProcessSpecificV8Snapshot` is enabled
- [FuseV1Options.LoadBrowserProcessSpecificV8Snapshot]: false,
- // https://github.com/electron/fuses/issues/7
- [FuseV1Options.EnableEmbeddedAsarIntegrityValidation]: false,
- });
}
},
files: [