summaryrefslogtreecommitdiff
path: root/doc/design
diff options
context:
space:
mode:
authorGravatar Joey Hess <joeyh@joeyh.name>2015-08-14 17:38:54 -0400
committerGravatar Joey Hess <joeyh@joeyh.name>2015-08-14 17:39:56 -0400
commit5d5b99278d238a3f5bf177e7602cd9f2da7f1e76 (patch)
tree67e7d555f065377de9af6d487766c5c6f6d8012f /doc/design
parentb6b307eb0def1300695a7c8cf082b2ac52473566 (diff)
enable parallel build for fast mode and explicitly disable for production
Currently, ghc has issues getting reproducible builds with parallel building. https://ghc.haskell.org/trac/ghc/ticket/4012
Diffstat (limited to 'doc/design')
-rw-r--r--doc/design/external_special_remote_protocol.mdwn20
1 files changed, 20 insertions, 0 deletions
diff --git a/doc/design/external_special_remote_protocol.mdwn b/doc/design/external_special_remote_protocol.mdwn
index 98d8b3dda..76e57bc69 100644
--- a/doc/design/external_special_remote_protocol.mdwn
+++ b/doc/design/external_special_remote_protocol.mdwn
@@ -343,6 +343,26 @@ quite a long time, especially when the git-annex assistant is using it.
The assistant will detect when the system connects to a network, and will
start a new process the next time it needs to use a remote.
+## readonly mode
+
+Some storage services allow downloading the content of a file using a
+regular http connection, with no authentication. An external special remote
+for such a storage service can support a readonly mode of operation.
+
+It works like this:
+
+* When a key's content is stored on the remote, use SETURLPRESENT to
+ tell git-annex the public url from which it can be downloaded.
+* When a key's content is removed from the remote, use SETURLMISSING.
+* Document that this external special remote can be used in readonly mode.
+
+ The user doesn't even need to install your external special remote
+ program to use such a remote! All they need to do is run:
+ `git annex enableremote $remotename readonly=true`
+
+* The readonly=true parameter makes git-annex download content from the
+ urls recorded earlier by SETURLPRESENT.
+
## TODO
* When storing encrypted files stream the file up/down the pipe, rather