From 48b7b222491b2799e265cda9a0b8be0d5d8eb3c0 Mon Sep 17 00:00:00 2001
From: Ben Sima <ben@bsima.me>
Date: Mon, 31 Jul 2023 10:15:34 -0400
Subject: Prototype nix expression generation

There are some limitations to this implementation:

1. Using `runCommand` means this will re-run any time anything changes in the
repo. The solution is to use the existing import detection to make a list of
source files, and put that into a `stdenv.mkDerivation`, which I'll do next.

2. The `NeatInterpolation` usage is ugly. The templated nix code should be
extracted into its own file, such as `Biz/Bild/Builder.nix`.

3. I'm not actually calling it yet. The ideal thing would be to call
`nix-instantiate`, get the output drv path, and then call `nix-store --realise`
on that. To do that I need to refactor my `proc` function to return stdout to
the calling function, and I should probably just make helper functions like
`nixInstatiate :: Target -> IO DrvPath` and `nixStoreRealise :: DrvPath ->
NixStorePath`, or something like that.
---
 Biz/Test.hs | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

(limited to 'Biz/Test.hs')

diff --git a/Biz/Test.hs b/Biz/Test.hs
index b6c2816..0a2cf2f 100644
--- a/Biz/Test.hs
+++ b/Biz/Test.hs
@@ -87,13 +87,13 @@ expected @?!= actual = assertNotEqual "" expected actual
 
 infixl 2 @?!=
 
--- |
+-- | expectedVal @=? actualVal
 (@=?) :: (Eq a, Show a) => a -> a -> HUnit.Assertion
 a @=? b = a HUnit.@=? b
 
 infixl 2 @=?
 
--- |
+-- | actualVal @?= expectedVal
 (@?=) :: (Eq a, Show a) => a -> a -> HUnit.Assertion
 a @?= b = a HUnit.@?= b
 
-- 
cgit v1.2.3