Permutation matrices research.
1{
2 description = "A Nix-flake-based C/C++ development environment";
3
4 inputs.nixpkgs.url = "https://flakehub.com/f/NixOS/nixpkgs/0.1.*.tar.gz";
5
6 outputs = { self, nixpkgs }:
7 let
8 supportedSystems = [ "x86_64-linux" "aarch64-linux" "x86_64-darwin" "aarch64-darwin" ];
9 forEachSupportedSystem = f: nixpkgs.lib.genAttrs supportedSystems (system: f {
10 pkgs = import nixpkgs { inherit system; };
11 });
12 in
13 {
14 devShells = forEachSupportedSystem ({ pkgs }: {
15 default = pkgs.mkShell {
16 venvDir = "venv";
17 packages = with pkgs; [
18 ccache
19 clang
20 clang-tools
21 cmake
22 codespell
23 conan
24 cppcheck
25 dash
26 doxygen
27 git-lfs
28 gtest
29 julia-bin
30 lcov
31 llvmPackages_12.openmp
32 vcpkg
33 vcpkg-tool
34 z3
35 # Python dependencies
36 python312
37 python312Packages.ipykernel
38 python312Packages.jupyter-core
39 python312Packages.jupyterlab
40 python312Packages.matplotlib
41 python312Packages.nbformat
42 python312Packages.numpy
43 python312Packages.pip
44 python312Packages.venvShellHook
45 python312Packages.z3-solver
46 sage
47 ] ++ (if system == "aarch64-darwin" then [ ] else [ gdb ]);
48 };
49 });
50 };
51}