diff --git a/pkgs/tools/networking/mozillavpn/default.nix b/pkgs/tools/networking/mozillavpn/default.nix index 011af9aca20b..0e3d43d191e6 100644 --- a/pkgs/tools/networking/mozillavpn/default.nix +++ b/pkgs/tools/networking/mozillavpn/default.nix @@ -3,6 +3,7 @@ cargo, cmake, fetchFromGitHub, + fetchpatch, go, lib, libcap, @@ -28,15 +29,21 @@ stdenv.mkDerivation (finalAttrs: { pname = "mozillavpn"; - version = "2.21.0"; + version = "2.23.1"; src = fetchFromGitHub { owner = "mozilla-mobile"; repo = "mozilla-vpn-client"; rev = "v${finalAttrs.version}"; fetchSubmodules = true; - hash = "sha256-XBvKSgMuWgMuV+is2G028UNQ4hID7tKiHFuMdPOZcsI="; + hash = "sha256-NQM1ZII9owD9ek/Leo6WRfvNybZ5pUjDgvQGXQBrD+0="; }; - patches = [ ]; + patches = [ + # Update cargo deps for "time" + (fetchpatch { + url = "https://github.com/mozilla-mobile/mozilla-vpn-client/commit/31d5799a30fc02067ad31d86b6ef63294bb3c3b8.patch"; + hash = "sha256-ECrIcfhhSuvbqQ/ExPdFkQ6b9Q767lhUKmwPdDz7yxI="; + }) + ]; netfilterGoModules = (buildGoModule { @@ -50,23 +57,9 @@ stdenv.mkDerivation (finalAttrs: { vendorHash = "sha256-Cmo0wnl0z5r1paaEf1MhCPbInWeoMhGjnxCxGh0cyO8="; }).goModules; - extensionBridgeDeps = rustPlatform.fetchCargoTarball { + cargoDeps = rustPlatform.fetchCargoTarball { inherit (finalAttrs) src patches; - name = "${finalAttrs.pname}-${finalAttrs.version}-extension-bridge"; - preBuild = "cd extension/bridge"; - hash = "sha256-1BXlp9AC9oQo/UzCtgNWVv8Er2ERoDLKdlTYXLzodMQ="; - }; - signatureDeps = rustPlatform.fetchCargoTarball { - inherit (finalAttrs) src patches; - name = "${finalAttrs.pname}-${finalAttrs.version}-signature"; - preBuild = "cd signature"; - hash = "sha256-GtkDkeFdPsLuTpZh5UqIhFMpzW3HMkbz7npryOQkkGw="; - }; - qtgleanDeps = rustPlatform.fetchCargoTarball { - inherit (finalAttrs) src patches; - name = "${finalAttrs.pname}-${finalAttrs.version}-qtglean"; - preBuild = "cd qtglean"; - hash = "sha256-HFmRcfxCcc83IPPIovbf3jNftp0olKQ6RzV8vPpCYAM="; + hash = "sha256-JIe6FQL0xm6FYYGoIwwnOxq21sC1y8xPsr8tYPF0Mzo="; }; buildInputs = [ @@ -96,24 +89,6 @@ stdenv.mkDerivation (finalAttrs: { wrapQtAppsHook ]; - postUnpack = '' - pushd source/extension/bridge - cargoDeps='${finalAttrs.extensionBridgeDeps}' cargoSetupPostUnpackHook - extensionBridgeDepsCopy="$cargoDepsCopy" - popd - - pushd source/signature - cargoDeps='${finalAttrs.signatureDeps}' cargoSetupPostUnpackHook - signatureDepsCopy="$cargoDepsCopy" - popd - - pushd source/qtglean - cargoDeps='${finalAttrs.qtgleanDeps}' cargoSetupPostUnpackHook - qtgleanDepsCopy="$cargoDepsCopy" - popd - ''; - dontCargoSetupPostUnpack = true; - postPatch = '' substituteInPlace src/cmake/linux.cmake \ --replace '/etc/xdg/autostart' "$out/etc/xdg/autostart" \ @@ -124,20 +99,6 @@ stdenv.mkDerivation (finalAttrs: { --replace '/etc' "$out/etc" ln -s '${finalAttrs.netfilterGoModules}' linux/netfilter/vendor - - pushd extension/bridge - cargoDepsCopy="$extensionBridgeDepsCopy" cargoSetupPostPatchHook - popd - - pushd signature - cargoDepsCopy="$signatureDepsCopy" cargoSetupPostPatchHook - popd - - pushd qtglean - cargoDepsCopy="$qtgleanDepsCopy" cargoSetupPostPatchHook - popd - - cargoSetupPostPatchHook() { true; } ''; cmakeFlags = [