about summary refs log tree commit diff
path: root/users/Profpatsch/writers
diff options
context:
space:
mode:
Diffstat (limited to 'users/Profpatsch/writers')
-rw-r--r--users/Profpatsch/writers/default.nix11
1 files changed, 8 insertions, 3 deletions
diff --git a/users/Profpatsch/writers/default.nix b/users/Profpatsch/writers/default.nix
index 222172e38e..6a76636389 100644
--- a/users/Profpatsch/writers/default.nix
+++ b/users/Profpatsch/writers/default.nix
@@ -2,14 +2,19 @@
 let
   bins = depot.nix.getBins pkgs.coreutils ["printf" "mkdir" "cat"];
 
-  python3 = name: args@{
+  inherit (depot.nix.yants) defun struct restrict attrs list string drv any;
+
+  FlakeError = restrict "flake error" (s: builtins.substring 0 1 s == "E") string;
+  Libraries = defun [ (attrs any) (list drv) ];
+  python3 = name: {
     libraries ? (_: []),
     flakeIgnore ? []
   }: pkgs.writers.writePython3 name {
-    libraries = libraries pkgs.python3Packages;
-    flakeIgnore = flakeIgnore;
+    libraries = Libraries libraries pkgs.python3Packages;
+    flakeIgnore = list FlakeError flakeIgnore;
   };
 
+  # TODO: add the same flake check as the pyhon3 writer
   python3Lib = { name, libraries ? (_: []) }: moduleString:
     let srcTree = depot.nix.runExecline.local name { stdin = moduleString; } [
       "importas" "out" "out"