{"action":"created","issue":{"url":"https://api.github.com/repos/rfjakob/gocryptfs/issues/14","labels_url":"https://api.github.com/repos/rfjakob/gocryptfs/issues/14/labels{/name}","comments_url":"https://api.github.com/repos/rfjakob/gocryptfs/issues/14/comments","events_url":"https://api.github.com/repos/rfjakob/gocryptfs/issues/14/events","html_url":"https://github.com/rfjakob/gocryptfs/issues/14","id":124695134,"number":14,"title":"Discussion: sub-commands","user":{"login":"kofalt","id":265071,"avatar_url":"https://avatars.githubusercontent.com/u/265071?v=3","gravatar_id":"","url":"https://api.github.com/users/kofalt","html_url":"https://github.com/kofalt","followers_url":"https://api.github.com/users/kofalt/followers","following_url":"https://api.github.com/users/kofalt/following{/other_user}","gists_url":"https://api.github.com/users/kofalt/gists{/gist_id}","starred_url":"https://api.github.com/users/kofalt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kofalt/subscriptions","organizations_url":"https://api.github.com/users/kofalt/orgs","repos_url":"https://api.github.com/users/kofalt/repos","events_url":"https://api.github.com/users/kofalt/events{/privacy}","received_events_url":"https://api.github.com/users/kofalt/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":6,"created_at":"2016-01-04T04:33:17Z","updated_at":"2016-01-04T22:55:20Z","closed_at":null,"body":"There are at least five actions one can take with gocryptfs:\r\n\r\n1. creating a share\r\n1. mounting a share\r\n1. unmounting a share\r\n1. changing the password of a share / configuring a share\r\n1. printing the version number\r\n\r\nSounds like a job for sub-commands!\r\n\r\n```\r\ngocryptfs --init cipher             -->  gocryptfs init     cipher\r\ngocryptfs cipher plain              -->  gocryptfs mount    cipher plain\r\nfusermount -u plain                 -->  gocryptfs unmount  cipher\r\ngocryptfs -passwd secretive cipher  -->  gocryptfs password cipher newPassword\r\ngocryptfs -version                  -->  gocryptfs version\r\n```\r\n\r\nThere's several libraries that help with global flags, sub-commands, and per-command flags.\r\nThoughts?"},"comment":{"url":"https://api.github.com/repos/rfjakob/gocryptfs/issues/comments/168837686","html_url":"https://github.com/rfjakob/gocryptfs/issues/14#issuecomment-168837686","issue_url":"https://api.github.com/repos/rfjakob/gocryptfs/issues/14","id":168837686,"user":{"login":"rfjakob","id":286847,"avatar_url":"https://avatars.githubusercontent.com/u/286847?v=3","gravatar_id":"","url":"https://api.github.com/users/rfjakob","html_url":"https://github.com/rfjakob","followers_url":"https://api.github.com/users/rfjakob/followers","following_url":"https://api.github.com/users/rfjakob/following{/other_user}","gists_url":"https://api.github.com/users/rfjakob/gists{/gist_id}","starred_url":"https://api.github.com/users/rfjakob/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rfjakob/subscriptions","organizations_url":"https://api.github.com/users/rfjakob/orgs","repos_url":"https://api.github.com/users/rfjakob/repos","events_url":"https://api.github.com/users/rfjakob/events{/privacy}","received_events_url":"https://api.github.com/users/rfjakob/received_events","type":"User","site_admin":false},"created_at":"2016-01-04T22:55:20Z","updated_at":"2016-01-04T22:55:20Z","body":"Regarding conflicts: Dropbox appends something like \"conflicted copy 1\" to the file name and keeps both versions if there is a conflict. This will work just file with gocryptfs when file name encryption is disabled. Use the `-plaintextnames` flag to disable file name encryption."}}