chiark / gitweb /
deployment work
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Sat, 21 Nov 2020 22:47:00 +0000 (22:47 +0000)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Sat, 21 Nov 2020 22:47:00 +0000 (22:47 +0000)
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Makefile
README.md

index 644163bcc083561c29af27944a8597217d33d48f..057eb16ab5e8db6795552c5c4a7526af00b102bf 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -233,6 +233,7 @@ deploy: stamp/cargo.deploy-build bundled-sources assets libraries
        rsync -r --delete --exclude=\*~ library $(DEPLOY_BASE)/.
        rsync -r $(FILEASSETS) $(addprefix $(WASM_PACKED)/, $(WASM_ASSETS)) \
                $(DEPLOY_BASE)/assets/
+       @echo
        @echo Deployment file copies complete.
 
 #$(DEPLOY_BASE)/bundled-sources
index 814ce5de8ade4a2322505712427e34f8816ac487..4f7b041ab11b833612af412552f291e78bc6628b 100644 (file)
--- a/README.md
+++ b/README.md
@@ -25,3 +25,47 @@ cases, un-released dependencies or locally patched versions.  See
 `Cargo.nail` and `Makefile`.  On my own laptop deployment is done with
 `make deploy` which copies all the relevant sources into the
 `bundled-sources` directory, which is accessible via the Otter web UI.
+
+Dependencies
+------------
+
+ * Rust Nightly (sorry)
+
+ * `cargo` and a willingness to let it download all the dependencies
+   and run them, from crates.io.  You can use my `Cargo.lock.example`
+   if you like.  I use a privsep scheme to avoid running stuff from
+   cargo in my main account on my laptop.  Using the not properly
+   released `nailing-cargo` program.
+
+ * `tsc`, Microsoft's Typescript compiler.  The version in Debian
+   buster will do.
+
+ * `wasm-pack`, a program for manipulating WebAssembly files.  This
+   too likes to run cargo and do god knows what.
+
+ * `resvg`, a program for manipulating SVG files.
+
+ * `bundle-rust-sources`, an un-released Rust package for publishing
+   source code of Rust projects.
+
+Weirdnesses:
+
+ * `Cargo.nail` contains a list of sibling directories of my Otter
+   source tree, which on my machine is called `server`.  For several
+   of these I sent patches upstream which have generally been
+   accepted, but I need to tidy this up to switch to the upstream
+   version.
+
+ * The Rocket dependency in `Cargo.toml` is completely mad due
+   to Cargo being awful.  I am hoping I can switch to an upstream
+   Rocket now.
+
+ * For running on chiark I build with the Rust target
+   `x86_64-unknown-linux-musl` which on my system is configured to
+   produce a completely statically linked bionary:
+
+```
+[target.x86_64-unknown-linux-musl]
+rustflags = ["-C", "target-feature=+crt-static"]
+# ^ from https://stackoverflow.com/questions/31770604/how-to-generate-statically-linked-executables
+```