summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile2
-rw-r--r--README.md11
-rw-r--r--default.nix4
-rw-r--r--depo/default.nix3
4 files changed, 17 insertions, 3 deletions
diff --git a/Makefile b/Makefile
index 8ddaa9b..71c1a16 100644
--- a/Makefile
+++ b/Makefile
@@ -3,7 +3,7 @@ USER = root
OUT = $(shell readlink -n ./result)
result:
- nix-build --attr system ./depo/nutin-madaj
+ nix-build -A depo.nutin-madaj.system
copy: result
nix copy --to "ssh://$(USER)@$(HOST)" ./result
diff --git a/README.md b/README.md
index 4bcc314..ab47227 100644
--- a/README.md
+++ b/README.md
@@ -18,7 +18,7 @@ This isn't totally in place yet, but it's something to work toward.
To get a development shell, for example to work on ibb, you can do:
- $ nix-shell pack --attr ibb
+ $ nix-shell -A pack.ibb
$ ghci
GHCi, version 8.4.4: http://www.haskell.org/ghc/ :? for help
Loaded GHCi configuration from /home/ben/src/biz/.ghci
@@ -27,7 +27,14 @@ To get a development shell, for example to work on ibb, you can do:
[2 of 2] Compiling Ibb ( apex/Ibb.hs, interpreted )
Ok, two modules loaded.
-Goals of the developer workflow:
+The build system topology is defined in `./default.nix`, so follow the import
+paths there to see what's available for building and installing locally. For
+example, to build `ibb`: `nix-build -A pack.ibb`. Or, to build the main app
+server with all dependencies and configuration: `nix-build -A
+depo.nutin-madaj.system`. Omitting `.system` will also build a VM that you can
+run locally for testing.
+
+## Goals of the developer workflow:
- have minimal ceremony
- default to asynchrony, but allow for synchronous work when necessary
diff --git a/default.nix b/default.nix
new file mode 100644
index 0000000..543f571
--- /dev/null
+++ b/default.nix
@@ -0,0 +1,4 @@
+{
+depo = import ./depo;
+pack = import ./pack;
+}
diff --git a/depo/default.nix b/depo/default.nix
new file mode 100644
index 0000000..79cdca5
--- /dev/null
+++ b/depo/default.nix
@@ -0,0 +1,3 @@
+{
+nutin-madaj = import ./nutin-madaj;
+}