]> git.sesse.net Git - bcachefs-tools-debian/blobdiff - INSTALL
rst2man: convert `which` to `command -v`
[bcachefs-tools-debian] / INSTALL
diff --git a/INSTALL b/INSTALL
index c20b7d9559d34968fce7d40952c29b50d6221124..f1d38774c7904f9cd468b5870802682a23019926 100644 (file)
--- a/INSTALL
+++ b/INSTALL
@@ -1,19 +1,76 @@
+-- Getting started --
 
 Dependencies:
 
- * libattr1
+ * libaio
  * libblkid
- * libuuid
+ * libkeyutils
+ * liblz4
  * libscrypt
  * libsodium
- * libkeyutils
  * liburcu
+ * libuuid
+ * libzstd
  * pkg-config
  * zlib1g
+ * valgrind
+
+Debian (Bullseye or later) and Ubuntu (20.04 or later): you can install these with
+    apt install -y pkg-config libaio-dev libblkid-dev libkeyutils-dev \
+        liblz4-dev libscrypt-dev libsodium-dev liburcu-dev libzstd-dev \
+        uuid-dev zlib1g-dev valgrind libudev-dev git build-essential \
+        python3 python3-docutils
+
+Fedora: install the "Development tools" group along with:
+    dnf install -y libaio-devel libsodium-devel \
+        libblkid-devel libzstd-devel zlib-devel userspace-rcu-devel \
+        lz4-devel libuuid-devel valgrind-devel keyutils-libs-devel \
+        libscrypt-devel findutils
 
-On debian, you can install these with
-    apt install -y pkg-config libblkid-dev uuid-dev libscrypt-dev libsodium-dev
-       libkeyutils-dev liburcu-dev zlib1g-dev libzstd-dev libattr1-dev
-       libaio-dev liblz4-dev
+Arch: install bcachefs-tools-git from the AUR.
+Or to build from source, install libscrypt from the AUR along with,
+    pacman -S base-devel libaio keyutils libsodium liburcu zstd valgrind
 
 Then, just make && make install
+
+
+-- Experimental features --
+
+Experimental fuse support is currently disabled by default. Fuse support is at
+an early stage and may corrupt your filesystem, so it should only be used for
+testing. To enable, you'll also need to add:
+
+* libfuse3 >= 3.7
+
+On Debian/Ubuntu (Bullseye/20.04 or later needed for libfuse >= 3.7):
+    apt install -y libfuse3-dev
+
+On Fedora (32 or later needed for lbifuse >= 3.7):
+    dnf install -y fuse3-devel
+
+Arch:
+    pacman -S fuse3
+
+Then, make using the BCACHEFS_FUSE environment variable (make clean first if
+previously built without fuse support):
+
+BCACHEFS_FUSE=1 make && make install
+
+
+-- Tests --
+
+Some tests are available to validate the "bcachefs" binary.  The tests depend
+on python3 pytest.
+
+On debian:
+    apt install -u python3-pytest
+
+Then, you can run the tests via:
+
+    make check
+    # or if pytest has a different name
+    make check PYTEST=pytest
+
+Optionally, you may wish to run tests in parallel using python3-pytest-xdist:
+
+    cd tests; pytest-3 -n4