From 271a0f8a2d38f0256db516ed236b8ba17641f3ef Mon Sep 17 00:00:00 2001 From: Qiming Chu Date: Thu, 15 Jan 2026 21:18:04 +0800 Subject: [PATCH] yosys: fix plugin module flags and update environment variable Yosys's handling of plugins changed considerably since 0.56. This can fix `withPlugins` on current yosys version. Signed-off-by: Qiming Chu --- pkgs/by-name/yo/yosys/package.nix | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/yo/yosys/package.nix b/pkgs/by-name/yo/yosys/package.nix index c4e06f4131bc..d100823bfa5c 100644 --- a/pkgs/by-name/yo/yosys/package.nix +++ b/pkgs/by-name/yo/yosys/package.nix @@ -62,9 +62,13 @@ let plugins: let paths = lib.closePropagation plugins; + libExt = stdenv.hostPlatform.extensions.sharedLibrary; + pluginPath = "$out/share/yosys/plugins"; module_flags = with builtins; - concatStringsSep " " (map (n: "--add-flags -m --add-flags ${n.plugin}") plugins); + concatStringsSep " " ( + map (n: "--add-flags -m --add-flags ${pluginPath}/${n.plugin}${libExt}") plugins + ); in lib.appendToName "with-plugins" (symlinkJoin { inherit (yosys) name; @@ -72,7 +76,7 @@ let nativeBuildInputs = [ makeWrapper ]; postBuild = '' wrapProgram $out/bin/yosys \ - --set NIX_YOSYS_PLUGIN_DIRS $out/share/yosys/plugins \ + --set YOSYS_PATH $out/share/yosys \ ${module_flags} ''; meta.mainProgram = "yosys";