44 lines
1.4 KiB
Nix
44 lines
1.4 KiB
Nix
# SPDX-FileCopyrightText: 2025 Ethan Reece <contact@ethanreece.com>
|
|
#
|
|
# SPDX-License-Identifier: MIT
|
|
|
|
# IMPORTANT: https://www.xilinx.com/member/forms/download/xef.html?filename=Xilinx_Unified_2022.2_1014_8888.tar.gz
|
|
# `nix-store --add-fixed sha256 Xilinx_Unified_2022.2_1014_8888.tar.gz`
|
|
# `sudo ln -st /nix/var/nix/gcroots /nix/store/wsl4wi73j3gwv9f6fpcnjfqg58s79m08-Xilinx_Unified_2022.2_1014_8888.tar.gz` # Prevent GC
|
|
# `nix hash file Xilinx_Unified_2022.2_1014_8888.tar.gz --base16`
|
|
|
|
# Resources:
|
|
# blog.kotatsu.dev/posts/2021-09-14-vivado-on-nixos/
|
|
# github:DLR-FT/xilinx-nix-utils
|
|
|
|
{ config, pkgs, ... }:
|
|
let
|
|
# IMPORTANT: https://www.xilinx.com/member/forms/license-form.html
|
|
xilinx-license = { }; # TODO: Add to ~/.Xilinx/Xilinx.lic
|
|
# IMPORTANT: SSH key must be added to GitHub account
|
|
peanut-toolchains = builtins.fetchGit {
|
|
url = "git@github.com:Peanut-Microsystems/toolchains.git";
|
|
ref = "main";
|
|
rev = "ed5a4bc9173bc2c2e7413ffac54c5390d96b4481";
|
|
};
|
|
xilinx-boards = pkgs.runCommand "xilinx-pynq-z1" { } ''
|
|
#!${pkgs.nushell}/bin/nu
|
|
mkdir -p $out
|
|
${pkgs.unzip}/bin/unzip ${peanut-toolchains}/board_files.zip -d $out
|
|
'';
|
|
in
|
|
{
|
|
imports = [
|
|
../utdallas/base.nix
|
|
./init.nix
|
|
];
|
|
home = {
|
|
packages = [ pkgs.xilinx-unified-2022-2 ];
|
|
sessionVariables = {
|
|
_JAVA_AWT_WM_NONREPARENTING = "1"; # Fix Vivado blank screen
|
|
};
|
|
file = {
|
|
".Xilinx/Vivado/2022.2/data/boards".source = xilinx-boards;
|
|
};
|
|
};
|
|
}
|