@@ 41,11 41,11 @@
},
"nixpkgs": {
"locked": {
- "lastModified": 1700856099,
- "narHash": "sha256-RnEA7iJ36Ay9jI0WwP+/y4zjEhmeN6Cjs9VOFBH7eVQ=",
+ "lastModified": 1705697961,
+ "narHash": "sha256-XepT3WS516evSFYkme3GrcI3+7uwXHqtHbip+t24J7E=",
"owner": "NixOS",
"repo": "nixpkgs",
- "rev": "0bd59c54ef06bc34eca01e37d689f5e46b3fe2f1",
+ "rev": "e5d1c87f5813afde2dda384ac807c57a105721cc",
"type": "github"
},
"original": {
@@ 66,11 66,11 @@
"treefmt-nix": "treefmt-nix"
},
"locked": {
- "lastModified": 1700890240,
- "narHash": "sha256-AKbWnuDzDuXaYSXHXSj0Sa1DSmUm1KaFNJhf2MEhoS0=",
+ "lastModified": 1705060653,
+ "narHash": "sha256-puYyylgrBS4AFAHeyVRTjTUVD8DZdecJfymWJe7H438=",
"owner": "nix-community",
"repo": "poetry2nix",
- "rev": "674fc0ef18bb62f3aea7684e09f20046a3cdfedf",
+ "rev": "e0b44e9e2d3aa855d1dd77b06f067cd0e0c3860d",
"type": "github"
},
"original": {
@@ 51,21 51,57 @@
meta.mainProgram = "nvc";
paths = [
pkgs.ghdl
- pkgs.nvc
+ # pkgs.nvc
];
};
in {
packages.${system}.default = vhdl-toolchain;
- devShells.${system}.default = pkgs.mkShell {
- packages = [
- vhdl-toolchain
- pkgs.vhdl-ls
- pkgs.gtkwave
- python-env
- ];
+ devShells.${system} = {
+ docs = pkgs.mkShell {
+ packages = [
+ pkgs.pandoc
+ pkgs.tectonic
+ pkgs.inkscape
+ (pkgs.python3.withPackages(ps: [
+ ps.pandocfilters
+ ]))
+ ];
+ };
+
+ default = pkgs.mkShell {
+ packages = [
+ vhdl-toolchain
+
+ (pkgs.rustPlatform.buildRustPackage rec {
+ pname = "vhdl-ls";
+ version = "0.77.0-patched";
+
+ src = pkgs.fetchFromGitHub {
+ owner = "Rutherther";
+ repo = "rust_hdl";
+ rev = "return-new-line";
+ hash = "sha256-EYG6Rycnq9unTTVk9Iy6ivnbr8sT1U7vnNGnnZefSqk=";
+ };
+
+ cargoHash = "sha256-YkeepkJLq95e9X2v+1AxMBmT0q4ARJXA1WB89/KmTcY=";
+
+ postPatch = ''
+ substituteInPlace vhdl_lang/src/config.rs \
+ --replace /usr/lib $out/lib
+ '';
+
+ postInstall = ''
+ mkdir -p $out/lib/rust_hdl
+ cp -r vhdl_libraries $out/lib/rust_hdl
+ '';
+ })
+ pkgs.gtkwave
+ python-env
+ ];
- VUNIT_SIMULATOR = "nvc";
+ VUNIT_SIMULATOR = "nvc";
+ };
};
};
}