Add nix shell
This commit is contained in:
parent
8a79a3522c
commit
68a2b2710f
48
shell.nix
Normal file
48
shell.nix
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
{ pkgs ? import (fetchTarball https://github.com/NixOS/nixpkgs/archive/23.05.tar.gz) {} }:
|
||||||
|
|
||||||
|
let
|
||||||
|
pythonPkgs = pkgs.python3Packages;
|
||||||
|
boostPython = pkgs.boost.override { python = pythonPkgs.python; enablePython = true; };
|
||||||
|
vscode = pkgs.vscode-with-extensions.override {
|
||||||
|
vscodeExtensions = with pkgs.vscode-extensions; [
|
||||||
|
bbenoist.nix
|
||||||
|
ms-vscode.cpptools
|
||||||
|
ms-vscode.cmake-tools
|
||||||
|
twxs.cmake
|
||||||
|
usernamehw.errorlens
|
||||||
|
llvm-vs-code-extensions.vscode-clangd
|
||||||
|
] ++ pkgs.vscode-utils.extensionsFromVscodeMarketplace [
|
||||||
|
{
|
||||||
|
name = "VerilogHDL";
|
||||||
|
publisher = "mshr-h";
|
||||||
|
version = "1.11.4";
|
||||||
|
sha256 = "sha256-4JY0eaN2IkwHv8u8X6ejDXk6vT1qB4vJjWdIy8b/jj4=";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
in pkgs.mkShell {
|
||||||
|
buildInputs = with pkgs; [
|
||||||
|
cmake
|
||||||
|
eigen
|
||||||
|
boostPython
|
||||||
|
pythonPkgs.python
|
||||||
|
pythonPkgs.apycula
|
||||||
|
libsForQt5.qt5.qtbase
|
||||||
|
llvmPackages.openmp
|
||||||
|
icestorm
|
||||||
|
trellis
|
||||||
|
mold
|
||||||
|
yosys
|
||||||
|
clang
|
||||||
|
valgrind
|
||||||
|
cling
|
||||||
|
gdb
|
||||||
|
vscode
|
||||||
|
];
|
||||||
|
|
||||||
|
shellHook = ''
|
||||||
|
export TRELLIS_INSTALL_PREFIX=${pkgs.trellis}
|
||||||
|
export ICESTORM_INSTALL_PREFIX=${pkgs.icestorm}
|
||||||
|
export QT_QPA_PLATFORM_PLUGIN_PATH="${pkgs.libsForQt5.qt5.qtbase.bin}/lib/qt-${pkgs.libsForQt5.qt5.qtbase.version}/plugins";
|
||||||
|
'';
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user