From 766b908923e82c45bc843574114cbac7014da89f Mon Sep 17 00:00:00 2001 From: Rodrigo Arias Mallo Date: Mon, 10 Feb 2025 17:01:43 +0100 Subject: [PATCH] wip --- overlay.nix | 1 + pkgs/vivado/default.nix | 55 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 56 insertions(+) create mode 100644 pkgs/vivado/default.nix diff --git a/overlay.nix b/overlay.nix index d337347..1c5577b 100644 --- a/overlay.nix +++ b/overlay.nix @@ -46,6 +46,7 @@ let stdenvClangOmpss2NodesOmpv = final.stdenv.override { cc = final.clangOmpss2NodesOmpv; allowedRequisites = null; }; tagaspi = callPackage ./pkgs/tagaspi/default.nix { }; tampi = callPackage ./pkgs/tampi/default.nix { }; + vivado = callPackage ./pkgs/vivado/default.nix { }; wxparaver = callPackage ./pkgs/paraver/default.nix { }; }; diff --git a/pkgs/vivado/default.nix b/pkgs/vivado/default.nix new file mode 100644 index 0000000..c99f4b9 --- /dev/null +++ b/pkgs/vivado/default.nix @@ -0,0 +1,55 @@ +# Thanks to MLabs to made the switch. + +{ + stdenv +, lib +, ncurses5 +, libxcrypt-legacy +, zlib +, libuuid +, xorg +, freetype +, fontconfig +, buildFHSEnv +}: + +with lib; + +let + vivadoDeps = pkgs: + let + # Apply patch from https://github.com/nix-community/nix-environments/pull/54 + # to fix ncurses libtinfo.so's soname issue + ncurses' = ncurses5.overrideAttrs (old: { + configureFlags = old.configureFlags ++ ["--with-termlib"]; + postFixup = ""; + }); + in [ + libxcrypt-legacy + (ncurses'.override {unicodeSupport = false;}) + zlib + libuuid + xorg.libSM + xorg.libICE + xorg.libXrender + xorg.libX11 + xorg.libXext + xorg.libXtst + xorg.libXi + freetype + fontconfig + ]; + + vivadoEnv = buildFHSEnv { + name = "vivado-env"; + targetPkgs = vivadoDeps; + }; + + vivado = buildFHSEnv { + name = "vivado"; + targetPkgs = vivadoDeps; + profile = "set -e; source /opt/Xilinx/Vivado/2024.2/settings64.sh"; + runScript = "vivado"; + }; +in + vivadoEnv