From 771bb88603c51f101a936ff18bcb2e522151bfc9 Mon Sep 17 00:00:00 2001 From: Quinn Unger Date: Thu, 8 Oct 2026 11:49:52 +0100 Subject: [PATCH] vivado: Add support for Power Design Manager --- pkgs/vivado/vivado-unwrapped.nix | 22 +++++++++++++++++++--- pkgs/vivado/vivado.nix | 3 ++- 2 files changed, 21 insertions(+), 4 deletions(-) diff --git a/pkgs/vivado/vivado-unwrapped.nix b/pkgs/vivado/vivado-unwrapped.nix index 7b6fab2..ec02177 100644 --- a/pkgs/vivado/vivado-unwrapped.nix +++ b/pkgs/vivado/vivado-unwrapped.nix @@ -51,7 +51,7 @@ let DocNav = true; "Install Devices for Kria SOMs and Starter Kits" = false; "Install devices for Alveo and edge acceleration platforms" = false; - "Power Design Manager (PDM)" = false; + "Power Design Manager (PDM)" = true; # Vitis "Vitis Embedded Development" = false; @@ -145,13 +145,12 @@ stdenvNoCC.mkDerivation ( phases = [ "unpackPhase" "installPhase" + "fixupPhase" ]; buildInputs = [ libgcc.lib ]; installPhase = '' - mkdir -p $out - mkdir -p $out/share mkdir -p $out/share/menus/applications-merged install_dir=$out/opt/Xilinx @@ -161,7 +160,9 @@ stdenvNoCC.mkDerivation ( --agree XilinxEULA,3rdPartyEULA \ --batch Install -c ${configFile} \ --location $install_dir + ''; + fixupPhase = '' echo "Replacing default libraries with system libs..." mkdir -p $out/lib gcclibs=( @@ -176,6 +177,7 @@ stdenvNoCC.mkDerivation ( lib_dirs=( ${finalAttrs.version}/Vivado ${finalAttrs.version}/Vitis + ${finalAttrs.version}/PDM xic .xinstall/${finalAttrs.version} .xinstall/xic @@ -185,6 +187,20 @@ stdenvNoCC.mkDerivation ( rm -rf $install_dir/$dir/lib/lnx64.o/Default ln -s $out/lib $install_dir/$dir/lib/lnx64.o/Default done + + echo "Fixing desktop entry icon paths..." + + # Incorrect path to doc_nav_application_48.png + substituteInPlace $out/share/applications/Documentation\ Navigator* \ + --replace-fail \ + "Icon=$install_dir/DocNav/resources/doc_nav_application_48.png" \ + "Icon=$install_dir/DocNav/bin/resources/doc_nav_application_48.png" + + # vlm_logo.png doesn't exist? + substituteInPlace $out/share/applications/Manage\ Licenses\ 2026.1* \ + --replace-fail \ + "Icon=$install_dir/${finalAttrs.version}/Vivado/data/vlm/images/vlm_logo.png" \ + "Icon=$install_dir/${finalAttrs.version}/Vivado/doc/images/vivado_logo.png" ''; meta = { diff --git a/pkgs/vivado/vivado.nix b/pkgs/vivado/vivado.nix index 5d250ac..53b6ec2 100644 --- a/pkgs/vivado/vivado.nix +++ b/pkgs/vivado/vivado.nix @@ -224,7 +224,6 @@ buildFHSEnv (finalAttrs: rec { "xar" "xcrg" "xelab" - "xlicdiag" "xrt_server" "xsc" "xsdb" @@ -269,6 +268,7 @@ buildFHSEnv (finalAttrs: rec { "xrcserver" "xrflink" ]; + pdmBins = binDirsFor "PDM" [ "pdm" ]; toWrap = lib.concatLines ( [ "${unwrapped}/opt/Xilinx/xic/xic" @@ -276,6 +276,7 @@ buildFHSEnv (finalAttrs: rec { ] ++ vitisBins ++ vivadoBins + ++ pdmBins ); in '' -- 2.51.2