Merge pull request #273861 from amarshall/bitwarden-fix-electron

bitwarden: use Electron 27 instead of 26 to fix bug

authored by Robert Schütz and committed by GitHub 706460f2 42628ca6

+77 -8
+8 -8
pkgs/tools/security/bitwarden/default.nix
··· 3 3 , cargo 4 4 , copyDesktopItems 5 5 , dbus 6 - , electron_26 6 + , electron_27 7 7 , fetchFromGitHub 8 8 , fetchpatch2 9 9 , glib ··· 25 25 let 26 26 description = "A secure and free password manager for all of your devices"; 27 27 icon = "bitwarden"; 28 - electron = electron_26; 28 + electron = electron_27; 29 29 in buildNpmPackage rec { 30 30 pname = "bitwarden"; 31 - version = "2023.12.0"; # TODO add back Electron version check below 31 + version = "2023.12.0"; 32 32 33 33 src = fetchFromGitHub { 34 34 owner = "bitwarden"; ··· 43 43 url = "https://github.com/solopasha/bitwarden_flatpak/raw/daec07b067b9cec5e260b44a53216fc65866ba1d/wayland-clipboard.patch"; 44 44 hash = "sha256-hcaRa9Nl7MYaTNwmB5Qdm65Mtufv3z+IPwLDPiO3pcw="; 45 45 }) 46 + # Workaround Electron 25 EOL and 26 has https://github.com/bitwarden/clients/issues/6560 47 + ./electron-27.patch 46 48 ]; 47 49 48 50 nodejs = nodejs_18; 49 51 50 52 makeCacheWritable = true; 51 53 npmWorkspace = "apps/desktop"; 52 - npmDepsHash = "sha256-bnYpvHO9Pnob+MbrSshv03mSwXCADH/2xw33nLVKMdg="; 54 + npmDepsHash = "sha256-QwG+D0M94HN1AyQlmzKeScZyksiUr5A9igEaox9DYN4="; 53 55 54 56 cargoDeps = rustPlatform.fetchCargoTarball { 55 57 name = "${pname}-${version}"; ··· 82 84 libsecret 83 85 ]; 84 86 85 - # FIXME add back once upstream moves to Electron >= 26 86 - # we use electron_26 because electron_25 is EOL 87 - /*preBuild = '' 87 + preBuild = '' 88 88 if [[ $(jq --raw-output '.devDependencies.electron' < package.json | grep -E --only-matching '^[0-9]+') != ${lib.escapeShellArg (lib.versions.major electron.version)} ]]; then 89 89 echo 'ERROR: electron version mismatch' 90 90 exit 1 91 91 fi 92 - '';*/ 92 + ''; 93 93 94 94 postBuild = '' 95 95 pushd apps/desktop
+69
pkgs/tools/security/bitwarden/electron-27.patch
··· 1 + From e2c15e826fe9d4d2d12868ef5409e423e3191b58 Mon Sep 17 00:00:00 2001 2 + From: Daniel James Smith <2670567+djsmith85@users.noreply.github.com> 3 + Date: Fri, 8 Dec 2023 13:07:46 +0100 4 + Subject: [PATCH] Bump electron to v27.1.3 (#7134) 5 + 6 + Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com> 7 + 8 + (cherry picked from commit d76602343f36d8e17a9b0204e0290488456c96d5) 9 + --- 10 + apps/desktop/electron-builder.json | 2 +- 11 + package-lock.json | 8 ++++---- 12 + package.json | 2 +- 13 + 3 files changed, 6 insertions(+), 6 deletions(-) 14 + 15 + diff --git a/apps/desktop/electron-builder.json b/apps/desktop/electron-builder.json 16 + index 69d1c0074f..a12870bd96 100644 17 + --- a/apps/desktop/electron-builder.json 18 + +++ b/apps/desktop/electron-builder.json 19 + @@ -19,7 +19,7 @@ 20 + "**/node_modules/@bitwarden/desktop-native/index.js", 21 + "**/node_modules/@bitwarden/desktop-native/desktop_native.${platform}-${arch}*.node" 22 + ], 23 + - "electronVersion": "25.9.1", 24 + + "electronVersion": "27.1.3", 25 + "generateUpdatesFilesForAllChannels": true, 26 + "publish": { 27 + "provider": "generic", 28 + diff --git a/package-lock.json b/package-lock.json 29 + index 3f0afde95b..9b7b2dbcd9 100644 30 + --- a/package-lock.json 31 + +++ b/package-lock.json 32 + @@ -125,7 +125,7 @@ 33 + "cross-env": "7.0.3", 34 + "css-loader": "6.8.1", 35 + "del": "6.1.1", 36 + - "electron": "25.9.1", 37 + + "electron": "27.1.3", 38 + "electron-builder": "23.6.0", 39 + "electron-log": "5.0.0", 40 + "electron-reload": "2.0.0-alpha.1", 41 + @@ -20173,9 +20173,9 @@ 42 + } 43 + }, 44 + "node_modules/electron": { 45 + - "version": "25.9.1", 46 + - "resolved": "https://registry.npmjs.org/electron/-/electron-25.9.1.tgz", 47 + - "integrity": "sha512-Uo/Fh7igjoUXA/f90iTATZJesQEArVL1uLA672JefNWTLymdKSZkJKiCciu/Xnd0TS6qvdIOUGuJFSTQnKskXQ==", 48 + + "version": "27.1.3", 49 + + "resolved": "https://registry.npmjs.org/electron/-/electron-27.1.3.tgz", 50 + + "integrity": "sha512-7eD8VMhhlL5J531OOawn00eMthUkX1e3qN5Nqd7eMK8bg5HxQBrn8bdPlvUEnCano9KhrVwaDnGeuzWoDOGpjQ==", 51 + "dev": true, 52 + "hasInstallScript": true, 53 + "dependencies": { 54 + diff --git a/package.json b/package.json 55 + index 9ee884b31d..4a5c3513fd 100644 56 + --- a/package.json 57 + +++ b/package.json 58 + @@ -88,7 +88,7 @@ 59 + "cross-env": "7.0.3", 60 + "css-loader": "6.8.1", 61 + "del": "6.1.1", 62 + - "electron": "25.9.1", 63 + + "electron": "27.1.3", 64 + "electron-builder": "23.6.0", 65 + "electron-log": "5.0.0", 66 + "electron-reload": "2.0.0-alpha.1", 67 + -- 68 + 2.42.0 69 +