summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--pkgs/desktops/gnome/core/gnome-tour/default.nix16
1 files changed, 16 insertions, 0 deletions
diff --git a/pkgs/desktops/gnome/core/gnome-tour/default.nix b/pkgs/desktops/gnome/core/gnome-tour/default.nix
index cbb33c2b230..a26dcfa0a7b 100644
--- a/pkgs/desktops/gnome/core/gnome-tour/default.nix
+++ b/pkgs/desktops/gnome/core/gnome-tour/default.nix
@@ -17,6 +17,8 @@
 , libadwaita
 , librsvg
 , rustc
+, rust
+, writeText
 , cargo
 }:
 
@@ -31,6 +33,10 @@ stdenv.mkDerivation rec {
 
   cargoVendorDir = "vendor";
 
+  depsBuildBuild = [
+    pkg-config
+  ];
+
   nativeBuildInputs = [
     appstream-glib
     cargo
@@ -54,6 +60,16 @@ stdenv.mkDerivation rec {
     librsvg
   ];
 
+  mesonFlags =
+    let
+      # ERROR: 'rust' compiler binary not defined in cross or native file
+      crossFile = writeText "cross-file.conf" ''
+        [binaries]
+        rust = [ 'rustc', '--target', '${rust.toRustTargetSpec stdenv.hostPlatform}' ]
+      '';
+    in
+    lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ "--cross-file=${crossFile}" ];
+
   passthru = {
     updateScript = gnome.updateScript {
       packageName = pname;