From c16fec801ef4ac25f20bd1b8c47dfe90fbbc28aa Mon Sep 17 00:00:00 2001 From: tacryt-socryp Date: Thu, 22 Aug 2024 12:26:12 -0500 Subject: [PATCH] DEVELOPERS: update the removal of references to Nix and old Urbit code --- DEVELOPERS.md | 39 --------------------------------------- 1 file changed, 39 deletions(-) diff --git a/DEVELOPERS.md b/DEVELOPERS.md index 0adb6f2..4697966 100644 --- a/DEVELOPERS.md +++ b/DEVELOPERS.md @@ -1,27 +1,5 @@ # Developing Sword -## Nix -Sword uses a Nix developer shell to set up the environment for rust builds. Please [Install Nix](https://nixos.org/download#download-nix). -With Nix installed, you can run - -```bash -nix develop -``` - -in `rust/` or any subdirectory, and you will be dropped into a BASH shell with the build environment set up. This will provide proper versions of non-rust dependencies, as well as the rust environment. - -If you receive the error - -``` -error: experimental Nix feature 'nix-command' is disabled; use '--extra-experimental-features nix-command' to override -``` - -edit your `$HOME/.config/nix/nix.conf` to include the line - -``` -extra-experimental-features = nix-command -``` - ## Rust ### Build @@ -34,23 +12,6 @@ cargo build to build the Sword executable. This will place the built executable at `target/debug/sword` under the `rust/sword` directory. -### Run - -Sword is made to run as an urbit "serf", meaning it is intended to be invoked by a "king" which sends it commands and performs side-effects specified by its output. We use the Vere king. - -To run the Vere king with Sword as serf, it's necessary to modify the Vere king to launch Sword instead of its own serf. This is done by modifying the executable of the serf protocol in the `u3_lord_init` function in `lord.c` of the Vere source: - -```C -// arg_c[0] = god_u->bin_c; -arg_c[0] = "/path/to/sword/repo/rust/sword/target/debug/sword"; -``` - -Then, it is necessary to follow the [Vere build instrcutions](https://github.com/urbit/vere/blob/develop/INSTALL.md). (You should exit the `nix develop` shell first for such a build.) Afterwards, it's possible to launch Vere with Sword as the serf using the usual commands: - -```bash -bazel-bin/pkg/vere/urbit -F zod -``` - #### Pills Sword development and testing, unlike regular development and ship operation, currently requires careful control over what pill is used to launch a ship. Currently, there are several pills available in `resources/pills/`: