diff --git a/doc/bugs/android_installation_fails.mdwn b/doc/bugs/android_installation_fails.mdwn new file mode 100644 index 0000000000..5f13a99856 --- /dev/null +++ b/doc/bugs/android_installation_fails.mdwn @@ -0,0 +1,27 @@ +### Please describe the problem. +Error by installing git-annex on mobile phone + +### What steps will reproduce the problem? +Installation in Termux throws: unknown architecture armv71 + + +### What version of git-annex are you using? On what operating system? + +Android 8.0.0 +Motorola Moto Z2 Play + +### Please provide any additional information below. + +[[!format sh """ +# If you can, paste a complete transcript of the problem occurring here. +# If the problem is with the git-annex assistant, paste in .git/annex/daemon.log +pkg install wget +wget https://git-annex.branchable.com/install/Android/git-annex-install +source git-annex-install + +# End of transcript or log. +"""]] + +### Have you had any luck using git-annex before? (Sometimes we get tired of reading bug reports all day and a lil' positive end note does wonders) +Yeah, almost every day + diff --git a/doc/forum/use_case_question__58___developer_repo_with_s3/comment_1_3e48d0a6c74e1bd67b1128d6b52f5fc4._comment b/doc/forum/use_case_question__58___developer_repo_with_s3/comment_1_3e48d0a6c74e1bd67b1128d6b52f5fc4._comment new file mode 100644 index 0000000000..69bda1022f --- /dev/null +++ b/doc/forum/use_case_question__58___developer_repo_with_s3/comment_1_3e48d0a6c74e1bd67b1128d6b52f5fc4._comment @@ -0,0 +1,24 @@ +[[!comment format=mdwn + username="andrew" + avatar="http://cdn.libravatar.org/avatar/acc0ece1eedf07dd9631e7d7d343c435" + subject="comment 1" + date="2019-01-16T23:44:02Z" + content=""" +I think you could probably achieve what you need to (depending on your specific needs). + +There some general notes on encryption at: and and some insights into `git-annex` internals with respect to encryption here . + +I think you could setup s3 as a special remote with something like: + + git annex initremote sensitive-s3 type=S3 chunk=1MiB encryption=hybrid embedcreds=no keyid=DEV1_KEYID + +`DEV1_KEYID` is a name that the user's GPG keyring can recognize (sounds like you already have those). `hybrid` encryption means (I think?) that DEV1_KEYID GPG public key is used to encrypt a symmetric cipher that is stored in the repo. All the content on `sensitive-s3` will be encrypted using the symmetric cipher. By default DEV1_KEYID will also be used to encrypt `AWS_ACCESS_KEY_ID` and `AWS_SECRET_ACCESS_KEY` which are stored encrypted in the repo, `embedcreds=no` means don't store that info in the repo. + +If you want to grant another developer access to `sensitive-s3`, then run something like: + + git annex enableremote sensitive-s3 keyid+=DEV2_KEYID + +I can't find any documentation of what happens next, but I assume `git-annex` re-encrypts the symmetric cipher using multi-key encryption so both DEV1_KEYID and DEV2_KEYID can decrypt the symmetric cipher using either of their private keys. Because `git-annex` doesn't actually encrypt your files using gpg keys when using `hybrid` encryption, you don't need to re-upload or re-encrypt any files. `git-annex` is only using the GPG keys to grant access to a small encrypted file containing a symmetric cipher that is used for the actual encryption of files. + +The one main drawback with this design is that is difficult to revoke access. If you want, at a later date, to revoke DEV2's access to sensitive-s3, you can't do that using any built-in `git-annex` feature. You could give each dev their own AWS creds up-front, then at the very least you could revoke those on AWS. If you need to, you could also delete the old cipher regenerate a new one and re-upload all files with a new cipher that only remaining developers have access to. +"""]] diff --git a/doc/forum/use_case_question__58___developer_repo_with_s3/comment_2_751d3f5855729d493ee2042b19117a70._comment b/doc/forum/use_case_question__58___developer_repo_with_s3/comment_2_751d3f5855729d493ee2042b19117a70._comment new file mode 100644 index 0000000000..8a9c6dff36 --- /dev/null +++ b/doc/forum/use_case_question__58___developer_repo_with_s3/comment_2_751d3f5855729d493ee2042b19117a70._comment @@ -0,0 +1,20 @@ +[[!comment format=mdwn + username="andrew" + avatar="http://cdn.libravatar.org/avatar/acc0ece1eedf07dd9631e7d7d343c435" + subject="comment 2" + date="2019-01-16T23:51:21Z" + content=""" +Another workflow is to use `encryption=pubkey`. Again init the repo on s3. And add the keys of all your devs. + + git annex initremote sensitive-s3 type=S3 chunk=1MiB encryption=pubkey embedcreds=no keyid=DEV1_KEYID + git annex enableremote sensitive-s3 keyid+=DEV2_KEYID + git annex enableremote sensitive-s3 keyid+=DEV3_KEYID + +Then files on sensitive-s3 will be encrypted using (I think) multi-key encryption that any of the devs can decrypt using their private key. + +If you want to remove a dev later then you would have to, tell git-annex to remove their key, drop all files from sensitive-s3 (since they are readable by the revoked dev), then re-upload all files. + + git annex enableremote sensitive-s3 keyid-=DEV2_KEYID + git annex drop --from=sensitive-s3 + git annex copy --to=senitive-s3 /tmp/all-the-sensitive-files +"""]] diff --git a/doc/forum/use_case_question__58___developer_repo_with_s3/comment_3_69ec3fedc166d68c10103b97c231e3d4._comment b/doc/forum/use_case_question__58___developer_repo_with_s3/comment_3_69ec3fedc166d68c10103b97c231e3d4._comment new file mode 100644 index 0000000000..d54f400a01 --- /dev/null +++ b/doc/forum/use_case_question__58___developer_repo_with_s3/comment_3_69ec3fedc166d68c10103b97c231e3d4._comment @@ -0,0 +1,9 @@ +[[!comment format=mdwn + username="pthomasdelaney@9b04608ad7e837fde64ab60a285a7b7254b5bb26" + nickname="pthomasdelaney" + avatar="http://cdn.libravatar.org/avatar/2212a0d6c1fd93bc531c1fb461777a68" + subject="comment 3" + date="2019-01-18T03:31:35Z" + content=""" +thanks for pointing me to these resources Andrew, these really help. I think that the pubkey method should work for us, especially since we have the capabilities to revoke access. +"""]]