@@ -2,11 +2,21 @@
2 description = "A universal interpreter front-end";
2 description = "A universal interpreter front-end";
5− nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable";
5+ nixpkgs.url = "github:nixos/nixpkgs/nixos-22.11";
6 flake-utils.url = "github:numtide/flake-utils";
6 flake-utils.url = "github:numtide/flake-utils";
9 outputs = { self, nixpkgs, flake-utils }:
9 outputs = { self, nixpkgs, flake-utils }:
11+ overlays.default = final: prev: {
12+ prybar = prev.lib.recurseIntoAttrs {
13+ inherit (self.packages.${prev.system})
14+ prybar-R prybar-clojure prybar-elisp prybar-julia prybar-lua prybar-nodejs
15+ prybar-ocaml prybar-python2 prybar-python3 prybar-python310 prybar-ruby
16+ prybar-scala prybar-sqlite prybar-tcl;
10 flake-utils.lib.eachDefaultSystem (system:
20 flake-utils.lib.eachDefaultSystem (system:
12 pkgs = nixpkgs.legacyPackages.${system};
22 pkgs = nixpkgs.legacyPackages.${system};
@@ -23,6 +33,19 @@
24 clojureWithCP =
34 clojureWithCP =
25 import ./languages/clojure/wrappedClojure.nix { inherit pkgs; };
35 import ./languages/clojure/wrappedClojure.nix { inherit pkgs; };
37+ python310Full = pkgs.python310.override {
38+ self = python310Full;
39+ pythonAttr = "python310Full";
44+ ocaml = pkgs.ocaml-ng.ocamlPackages_4_12.ocaml;
46+ findlib = pkgs.ocaml-ng.ocamlPackages_4_12.findlib;
47+ topkg = pkgs.ocaml-ng.ocamlPackages_4_12.topkg;
48+ reason = pkgs.ocaml-ng.ocamlPackages_4_12.reason;
28 packages = {
51 packages = {
@@ -35,7 +58,7 @@
36 prybar-nodejs = buildPrybar {
59 prybar-nodejs = buildPrybar {
37 language = "nodejs";
60 language = "nodejs";
38− binaries = [ pkgs.nodejs-12_x ];
61+ binaries = [ pkgs.nodejs-16_x ];
41 prybar-python2 = buildPrybar {
64 prybar-python2 = buildPrybar {
@@ -45,7 +68,12 @@
46 prybar-python3 = buildPrybar {
69 prybar-python3 = buildPrybar {
47 language = "python3";
70 language = "python3";
48− buildInputs = [ pkgs.python38Full ];
71+ buildInputs = [ pkgs.libxcrypt pkgs.python38Full ];
74+ prybar-python310 = buildPrybar {
75+ language = "python310";
76+ buildInputs = [ pkgs.libxcrypt python310Full ];
51 prybar-lua = buildPrybar {
79 prybar-lua = buildPrybar {
@@ -66,11 +94,11 @@
66 # This has to be in the build inputs so it set-ups the library paths before the check phase
94 # This has to be in the build inputs so it set-ups the library paths before the check phase
67 # It will not be copied over to the final package.
95 # It will not be copied over to the final package.
68 buildInputs = [
96 buildInputs = [
71− pkgs.ocamlPackages.findlib
99+ findlib
72− pkgs.ocamlPackages.topkg
100+ topkg
73− pkgs.ocamlPackages.reason
101+ reason
@@ -105,6 +133,41 @@
137+ devShells.default = pkgs.mkShell {
138+ nativeBuildInputs = [
165+ export CGO_LDFLAGS_ALLOW="-Wl,--compress-debug-sections=zlib"
166+ export DISABLE_GO_TESTS=1