summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author·𐑑𐑴𐑕𐑑𐑩𐑀2025-12-20 19:34:15 +0000
committer·𐑑𐑴𐑕𐑑𐑩𐑀2025-12-20 19:34:15 +0000
commit3b9858516a849f2cfd096b93c973c220c40fcf19 (patch)
tree1060491a74dafbfae68324389b7cde835ff12377
parentba0662b64c10168379cec4327f67d0c6efaa248e (diff)
downloadnixtaml-3b9858516a849f2cfd096b93c973c220c40fcf19.tar
nixtaml-3b9858516a849f2cfd096b93c973c220c40fcf19.tar.gz
nixtaml-3b9858516a849f2cfd096b93c973c220c40fcf19.tar.bz2
nixtaml-3b9858516a849f2cfd096b93c973c220c40fcf19.tar.lz
nixtaml-3b9858516a849f2cfd096b93c973c220c40fcf19.tar.xz
nixtaml-3b9858516a849f2cfd096b93c973c220c40fcf19.tar.zst
nixtaml-3b9858516a849f2cfd096b93c973c220c40fcf19.zip
Better project setup stuff
-rw-r--r--README.rst67
1 files changed, 67 insertions, 0 deletions
diff --git a/README.rst b/README.rst
index 58e28d2..76d438f 100644
--- a/README.rst
+++ b/README.rst
@@ -152,14 +152,81 @@ As they say: read the manpages
Building / hacking
===============================================================================
+Working setup
+-------------------------------------------------------------------------------
+
+If you don’t have Darcs install, you can use from Nixpkgs such as
+
.. code:: console
$ nix-shell -p darcs
+
+After/else
+
+.. code:: console
+
$ darcs clone https://darcs.toastal.in.th/nixtamal/trunk/ nixtamal
$ darcs setpref boringfile .boring
$ cd nixtamal
+
+Development environment setup
+-------------------------------------------------------------------------------
+
+Base Nix shell
+
+.. code:: console
+
+ $ nix-shell
+
+Or with Direnv
+
+.. code:: console
+
+ $ echo "use nix" >> .envrc
+ $ direnv allow
+
+Building with Dune
+-------------------------------------------------------------------------------
+
+.. code:: console
+
+ $ dune build
+
+Building with Nix
+-------------------------------------------------------------------------------
+
+Basic
+
+.. code:: console
+
$ nix-build
+Everything else
+
+.. code:: console
+
+ $ nix-build release.nix
+ $ nix-build release.nix -A nixtamal
+
+Darcs hooks (can skip)
+-------------------------------------------------------------------------------
+
+.. code:: console
+
+ $ chmod +x script/mk-darcs-weak-hash
+ $ $EDITOR _darcs/prefs/defaults
+
+.. code::
+
+ apply posthook script/mk-darcs-weak-hash && nix-build --no-out-link release.nix
+ obliterate posthook script/mk-darcs-weak-hash
+ record posthook script/mk-darcs-weak-hash
+
+Hooks here can:
+ β€’ Build the entire project before applying patches to make sure it works.
+ β€’ Show the WeakHash ``_darcs/weak_hash`` which is good for querying project
+ state, such as for ``latest-cmd``s (hint, hink).
+
License
===============================================================================