diff --git a/pkgs/by-name/cl/clash-rs/package.nix b/pkgs/by-name/cl/clash-rs/package.nix index 0155e8d72370..b0dc46f1cc28 100644 --- a/pkgs/by-name/cl/clash-rs/package.nix +++ b/pkgs/by-name/cl/clash-rs/package.nix @@ -5,19 +5,23 @@ protobuf, versionCheckHook, }: -rustPlatform.buildRustPackage rec { +rustPlatform.buildRustPackage (finalAttrs: { pname = "clash-rs"; - version = "0.7.5"; + version = "0.7.7"; src = fetchFromGitHub { owner = "Watfaq"; repo = "clash-rs"; - tag = "v${version}"; - hash = "sha256-c4XF0F2ifTvbXTMGiJc1EaGTlS/X5ilZTpXe01uHs4Y="; + tag = "v${finalAttrs.version}"; + hash = "sha256-x89sFBQ6bAIHvaRTCxqKKgFKo7PpquVze0R6VicwrJw="; }; useFetchCargoVendor = true; - cargoHash = "sha256-ZSwNlknpZ0zKj+sklmO14Ey5DPZ0Wk9xxMiXwIiuRd0="; + cargoHash = "sha256-jfc0Rmt9eEN3ds5Rakj+IcJcUa28CbhiSu4AfqHurf0="; + + patches = [ + ./unbounded-shifts.patch + ]; nativeInstallCheckInputs = [ protobuf @@ -53,4 +57,4 @@ rustPlatform.buildRustPackage rec { maintainers = with lib.maintainers; [ aaronjheng ]; platforms = lib.platforms.linux ++ lib.platforms.darwin; }; -} +}) diff --git a/pkgs/by-name/cl/clash-rs/unbounded-shifts.patch b/pkgs/by-name/cl/clash-rs/unbounded-shifts.patch new file mode 100644 index 000000000000..ab6c43b7a264 --- /dev/null +++ b/pkgs/by-name/cl/clash-rs/unbounded-shifts.patch @@ -0,0 +1,13 @@ +diff --git a/clash_lib/src/lib.rs b/clash_lib/src/lib.rs +index 6ada034..420e465 100644 +--- a/clash_lib/src/lib.rs ++++ b/clash_lib/src/lib.rs +@@ -2,7 +2,7 @@ + #![feature(ip)] + #![feature(sync_unsafe_cell)] + #![feature(let_chains)] +-#![cfg_attr(not(version("1.86.0")), feature(unbounded_shifts))] ++#![feature(unbounded_shifts)] + + #[macro_use] + extern crate anyhow;