diff --git a/pkgs/by-name/bi/bitwarden-desktop/dont-auto-setup-biometrics.patch b/pkgs/by-name/bi/bitwarden-desktop/dont-auto-setup-biometrics.patch index b6307f43ed27e7..4102caca56ae41 100644 --- a/pkgs/by-name/bi/bitwarden-desktop/dont-auto-setup-biometrics.patch +++ b/pkgs/by-name/bi/bitwarden-desktop/dont-auto-setup-biometrics.patch @@ -1,8 +1,8 @@ -diff --git a/apps/desktop/src/key-management/biometrics/biometric.unix.main.ts b/apps/desktop/src/key-management/biometrics/biometric.unix.main.ts -index 8962e7f3ec..a7291420f2 100644 ---- a/apps/desktop/src/key-management/biometrics/biometric.unix.main.ts -+++ b/apps/desktop/src/key-management/biometrics/biometric.unix.main.ts -@@ -109,7 +109,7 @@ export default class BiometricUnixMain implements OsBiometricService { +diff --git a/apps/desktop/src/key-management/biometrics/os-biometrics-linux.service.ts b/apps/desktop/src/key-management/biometrics/os-biometrics-linux.service.ts +index 791b4d6f88..dfee0bbf8d 100644 +--- a/apps/desktop/src/key-management/biometrics/os-biometrics-linux.service.ts ++++ b/apps/desktop/src/key-management/biometrics/os-biometrics-linux.service.ts +@@ -115,7 +115,7 @@ export default class OsBiometricsServiceLinux implements OsBiometricService { // The user needs to manually set up the polkit policy outside of the sandbox // since we allow access to polkit via dbus for the sandboxed clients, the authentication works from // the sandbox, once the policy is set up outside of the sandbox. diff --git a/pkgs/by-name/bi/bitwarden-desktop/package.nix b/pkgs/by-name/bi/bitwarden-desktop/package.nix index 40912b780968c8..83f47e4a8c8778 100644 --- a/pkgs/by-name/bi/bitwarden-desktop/package.nix +++ b/pkgs/by-name/bi/bitwarden-desktop/package.nix @@ -3,7 +3,9 @@ buildNpmPackage, cargo, copyDesktopItems, - electron_33, + electron_34, + esbuild, + buildGoModule, fetchFromGitHub, gnome-keyring, jq, @@ -23,7 +25,7 @@ let description = "Secure and free password manager for all of your devices"; icon = "bitwarden"; - electron = electron_33; + electron = electron_34; bitwardenDesktopNativeArch = { @@ -36,13 +38,13 @@ let in buildNpmPackage rec { pname = "bitwarden-desktop"; - version = "2025.1.1"; + version = "2025.1.4"; src = fetchFromGitHub { owner = "bitwarden"; repo = "clients"; rev = "desktop-v${version}"; - hash = "sha256-0NXrTBkCyo9Hw+fyFTfXfa1efBlaM6xWd9Uvsbathpw="; + hash = "sha256-a8OQ/vQCJSjipLnuNWaWqnAJK+Str6FdHPBTbC04VxA="; }; patches = [ @@ -66,8 +68,13 @@ buildNpmPackage rec { "--engine-strict" "--legacy-peer-deps" ]; + + npmRebuildFlags = [ + # FIXME one of the esbuild versions fails to download @esbuild/linux-x64 + "--ignore-scripts" + ]; npmWorkspace = "apps/desktop"; - npmDepsHash = "sha256-DDsPkvLGOhjmdYEOmhZfe4XHGFyowvWO24YcCA5griM="; + npmDepsHash = "sha256-BoHwgv/1QiIfUPCJ3+ZHvbMelngRSEKlbkpBHRtnoP8="; cargoDeps = rustPlatform.fetchCargoVendor { inherit pname version src; @@ -79,7 +86,7 @@ buildNpmPackage rec { ) patches; patchFlags = [ "-p4" ]; sourceRoot = "${src.name}/${cargoRoot}"; - hash = "sha256-IL8+n+rhRbvRO1jxJSy9PjUMb/tI4S/gzpUNOojBPWk="; + hash = "sha256-OldVFMI+rcGAbpDg7pHu/Lqbw5I6/+oXULteQ9mXiFc="; }; cargoRoot = "apps/desktop/desktop_native"; @@ -162,7 +169,7 @@ buildNpmPackage rec { # This may break in the future but its better than copy-pasting it manually. mkdir -p $out/share/polkit-1/actions/ pushd apps/desktop/src/key-management/biometrics - awk '/const polkitPolicy = `/{gsub(/^.*`/, ""); print; str=1; next} str{if (/`;/) str=0; gsub(/`;/, ""); print}' biometric.unix.main.ts > $out/share/polkit-1/actions/com.bitwarden.Bitwarden.policy + awk '/const polkitPolicy = `/{gsub(/^.*`/, ""); print; str=1; next} str{if (/`;/) str=0; gsub(/`;/, ""); print}' os-biometrics-linux.service.ts > $out/share/polkit-1/actions/com.bitwarden.Bitwarden.policy popd pushd apps/desktop/resources/icons