diff --git a/flake.nix b/flake.nix
index cf9d4bcf231edb3547628b9ad3a7258ab0775471..1777b76a3d2c1dc7d9b5d3965fcb90ca030a2538 100644
--- a/flake.nix
+++ b/flake.nix
@@ -177,11 +177,6 @@
           ];
         };
 
-        buildFeatures = [ ]
-          ++ (if allocator == "jemalloc" then [ "jemalloc" ] else [ ])
-          ++ (if allocator == "hmalloc" then [ "hardened_malloc" ] else [ ])
-        ;
-
         rocksdb' = (if allocator == "jemalloc" then (pkgs.rocksdb.override { enableJemalloc = true; }) else (rocksdb' pkgs));
 
         # This is redundant with CI
@@ -190,7 +185,10 @@
         env = env pkgs;
         nativeBuildInputs = nativeBuildInputs pkgs;
 
-        cargoExtraArgs = cargoArgs;
+        cargoExtraArgs = cargoArgs
+          + (if allocator == "jemalloc" then " --features jemalloc" else "")
+          + (if allocator == "hmalloc" then " --features hardened_malloc" else "")
+        ;
 
         meta.mainProgram = cargoToml.package.name;