aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--flake.nix18
-rw-r--r--test_building_all_shims.py (renamed from testing_building_all_shims.py)14
2 files changed, 26 insertions, 6 deletions
diff --git a/flake.nix b/flake.nix
index e7f9eae..08fa7cc 100644
--- a/flake.nix
+++ b/flake.nix
@@ -653,7 +653,25 @@
installPhase = ''
install -Dm755 $src $out/bin/$pname
'';
+ };
+ buildShims =
+ with pkgs.python3Packages;
+ buildPythonApplication {
+ pname = "buildShims";
+ version = "0.1.0";
+ format = "other";
+
+ propagatedBuildInputs = [
+ ipython
+ pudb
+ ];
+
+ src = ./testing_building_all_shims.py;
+ dontUnpack = true;
+ installPhase = ''
+ install -Dm755 $src $out/bin/$pname
+ '';
};
};
diff --git a/testing_building_all_shims.py b/test_building_all_shims.py
index 675d8a9..677961f 100644
--- a/testing_building_all_shims.py
+++ b/test_building_all_shims.py
@@ -6,14 +6,15 @@ import json
import subprocess as sp
def get_all_versions(library):
- with open(f"./nix/{library}_pkgs_versions.json", "r") as handle:
+ with open(f"./nix/{library}_pkg_versions.json", "r") as handle:
versions = json.load(handle)
return versions
def can_build(library, version):
+ cmd = ["nix", "build", f".#shim.{library}.{version}"]
try:
- sp.check_output(["nix", "build", f"'.#shim.{library}.{version}'"])
+ sp.check_output(cmd, stderr=sp.DEVNULL)
except sp.CalledProcessError as e:
return False
return True
@@ -21,6 +22,7 @@ def can_build(library, version):
def main():
parser = argparse.ArgumentParser()
parser.add_argument("-l", "--library")
+ args = parser.parse_args()
library = args.library
libraries = [
@@ -38,13 +40,13 @@ def main():
match library:
case None:
for lib in libraries:
- print(lib)
+ print(f"Library: {lib}")
for version in get_all_versions(lib):
print(f"{version}: {can_build(lib, version)}")
case _:
- print(lib)
- for version in get_all_versions(lib):
- print(f"{version}: {can_build(lib, version)}")
+ print(f"Library: {lib}")
+ for version in get_all_versions(library):
+ print(f"{version}: {can_build(library, version)}")
if __name__ == '__main__':