diff options
| author | Alejandro Soto <alejandro@34project.org> | 2024-06-02 11:13:51 -0600 |
|---|---|---|
| committer | Alejandro Soto <alejandro@34project.org> | 2024-06-02 12:19:36 -0600 |
| commit | 3794b707ebec4f91bd3f9922572bb154a8ac910a (patch) | |
| tree | ab67275698f464f7348b08dd92c39ae932007fc5 /nix/shells.nix | |
| parent | 8fb28df31fcee15c82a57ed3988e8eb0f23a32b6 (diff) | |
nix/shells: refactor out of flake
Diffstat (limited to 'nix/shells.nix')
| -rw-r--r-- | nix/shells.nix | 90 |
1 files changed, 90 insertions, 0 deletions
diff --git a/nix/shells.nix b/nix/shells.nix new file mode 100644 index 0000000..0ab1bba --- /dev/null +++ b/nix/shells.nix @@ -0,0 +1,90 @@ +{ pkgs }: with pkgs; { + default = mkShell { + buildInputs = [ + ncurses + openssl + SDL2 + zlib + ]; + + nativeBuildInputs = [ + binutils + gcc + cross.stdenv.cc.cc + cross.stdenv.cc.bintools + gcc-arm-embedded + gdb + gnumake + gtkwave + kermit + meson + ninja + lcov + (openocd.overrideAttrs (prev: { + pname = "openocd-vexriscv"; + version = "0.11.0-master"; + + buildInputs = prev.buildInputs ++ [ pkgs.libyaml ]; + nativeBuildInputs = [ pkgs.autoreconfHook ] ++ prev.nativeBuildInputs; + + src = pkgs.fetchFromGitHub { + repo = "openocd_riscv"; + owner = "SpinalHDL"; + + rev = "058dfa50d625893bee9fecf8d604141911fac125"; + hash = "sha256-bv8hUlZXEexUy8tzrnibNYRNb2oLRfh1xCpmalPwdqc="; + }; + })) + pkg-config + (python3.withPackages (py: with py; [ + cocotb + cocotb-bus + find-libpython # Para cocotb + matplotlib + numpy + pillow + pytest # Para cocotb + (py.callPackage ./cocotb-coverage.nix { }) + (py.callPackage ./peakrdl/peakrdl.nix { }) + (py.callPackage ./peakrdl/peakrdl-regblock.nix { }) + (py.callPackage ./pyuvm.nix { }) + ])) + rv32Pkgs.stdenv.cc.cc + rv32Pkgs.stdenv.cc.bintools + (quartus-prime-lite.override { supportedDevices = [ "Cyclone V" ]; }) + verilator + ]; + + shellHook = '' + export CROSS_COMPILE=arm-unknown-linux-gnueabi- + export MAKEFLAGS="AR=gcc-ar" + + # <https://discourse.nixos.org/t/fonts-in-nix-installed-packages-on-a-non-nixos-system/5871/7> + export LOCALE_ARCHIVE="${glibcLocales}/lib/locale/locale-archive" + export FONTCONFIG_FILE="${fontconfig.out}/etc/fonts/fonts.conf" + ''; + }; + + kbuild = mkShell { + buildInputs = [ + ncurses + ]; + + nativeBuildInputs = [ + bc + bison + flex + gcc + cross.stdenv.cc.cc + cross.stdenv.cc.bintools + gnumake + openssl # Splash de u-boot + ubootTools + ]; + + shellHook = '' + export CROSS_COMPILE=arm-unknown-linux-gnueabi- + export MAKEFLAGS="ARCH=arm O=build/taller LOADADDR=0x8000" + ''; + }; +} |
