about summary refs log tree commit diff
path: root/flake.nix
blob: d8306cdc27259ef16a0552bab4c25442ee784aea (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
{
  description = "Pry-lang flake";

  inputs = {
    nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
  };

  outputs = { self, nixpkgs }: let
    systems = ["x86_64-darwin" "aarch64-darwin" "x86_64-linux"];

    createDevShell = system: let
      pkgs = import nixpkgs {
        inherit system;
        config.allowUnfree = true;
      };
      isDarwin = pkgs.stdenv.isDarwin;
    in pkgs.mkShell {
      buildInputs = with pkgs; [
      ]
      ++ pkgs.lib.optional isDarwin llvmPackages_19.libllvm
      ++ pkgs.lib.optionals (!isDarwin) ([
        llvmPackages_20.libllvm
        gdb
        gf
        valgrind
      ]);
    };
  in {
    devShell = nixpkgs.lib.genAttrs systems createDevShell;
  };
}