kbsecret 0.0.4 → 0.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: ad8ec26f4103c6147070d90aa4986dfa4714dc08
4
- data.tar.gz: 1b92d849405aef4446402090f02dbe0c04f106fd
3
+ metadata.gz: 14ff1ea30d05bfb741dbd26c342e59469fb621f9
4
+ data.tar.gz: 886a9e0d89d256e232ec5d20cbb4a53bccb2e358
5
5
  SHA512:
6
- metadata.gz: 2377e78ea1d8356c13438865cfb5b2795bfcf594e4430b70b11c253c0a9d983b50708cbd690987d3a65b2c1d04a24808b2566a25d4f2ed6a5fbaba0416abab5d
7
- data.tar.gz: e206a20e697ffd2d2fe54790dfabc6997525ecb8a2cbed91f953e950851aabe744d2408d516e127396571748d5e343d50a1118e74de46bac3d3e601910e28ea4
6
+ metadata.gz: 3cce5f4d1f5a605a5e079704387f887f30469b3107e1002efc72ff705184148c6fe242604570a083bd4f20c119b8719f36b92451816315511c1880e3941ca2a9
7
+ data.tar.gz: ac239cf8b83d4e8a4012e4de40da5a52449a9bc178fb3ed8ee759ac204a769933cf0adefcdc82d18340559c853c835f7f47e050569b006934575072ad3909ba8
data/README.md CHANGED
@@ -12,7 +12,7 @@ interface for [KBFS](https://keybase.io/docs/kbfs) and
12
12
  ### Benefits over current offerings
13
13
 
14
14
  * Easy password and environment sharing across multiple users.
15
- - `kbsecret -s dev-team login github` prints the dev team's GitHub login.
15
+ - `kbsecret login -s dev-team github` prints the dev team's GitHub login.
16
16
  * No PGP/SSH key setup necessary - you only need a Keybase account.
17
17
  - No more worrying about losing your key.
18
18
  * Transparent access - KBFS provides a VFS layer over all reads/writes.
data/bin/kbsecret-login CHANGED
@@ -8,7 +8,7 @@ opts = Slop.parse suppress_errors: true do |o|
8
8
  Retrieve login records.
9
9
 
10
10
  Usage:
11
- kbsecret env [--session <name>] <label1 label2 ...>
11
+ kbsecret login [--session <name>] <label1 label2 ...>
12
12
 
13
13
  Examples:
14
14
  kbsecret login gmail
data/bin/kbsecret-new CHANGED
@@ -25,7 +25,7 @@ opts = Slop.parse suppress_errors: true do |o|
25
25
  o.string "-s", "--session", "the session name", default: :default
26
26
  o.bool "-f", "--force", "force creation (ignore overwrites, etc.)"
27
27
  o.bool "-i", "--interactive", "input record fields interactively"
28
- o.bool "-e", "--echo", "echo input to tty (only effects --interactive)"
28
+ o.bool "-e", "--echo", "echo input to tty (only affects --interactive)"
29
29
 
30
30
  o.on "-h", "--help" do
31
31
  puts o
data/bin/kbsecret-pass ADDED
@@ -0,0 +1,47 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require "kbsecret"
4
+ require "slop"
5
+ require "clipboard"
6
+
7
+ opts = Slop.parse suppress_errors: true do |o|
8
+ o.banner = <<~EOS
9
+ Retrieve a login record's password.
10
+
11
+ Usage:
12
+ kbsecret pass [--session <name>] [--clipboard] <label>
13
+
14
+ Examples:
15
+ kbsecret pass gmail | xclip
16
+ kbsecret pass --clipboard gmail
17
+ EOS
18
+
19
+ o.string "-s", "--session", "the session name", default: :default
20
+ o.bool "-c", "--clipboard", "dump the password in the clipboard"
21
+
22
+ o.on "-h", "--help" do
23
+ puts o
24
+ exit
25
+ end
26
+ end
27
+
28
+ sess_name = opts[:session]
29
+
30
+ unless KBSecret::Config.session? sess_name
31
+ abort "Fatal: Unknown session: '#{sess_name}'."
32
+ end
33
+
34
+ session = KBSecret::Session.new label: sess_name
35
+ label = opts.args.shift
36
+ login_records = session.records.select { |r| r.type == "login" }
37
+ record = login_records.find { |r| r.label == label }
38
+
39
+ if record
40
+ if opts.clipboard?
41
+ Clipboard.copy record.password
42
+ else
43
+ puts record.password
44
+ end
45
+ else
46
+ abort "Fatal: No such record."
47
+ end
data/lib/kbsecret.rb CHANGED
@@ -8,7 +8,7 @@ require_relative "kbsecret/session"
8
8
  # The primary namespace for kbsecret.
9
9
  module KBSecret
10
10
  # kbsecret's current version
11
- VERSION = "0.0.4".freeze
11
+ VERSION = "0.0.5".freeze
12
12
 
13
13
  # fail very early if the user doesn't have keybase and KBFS running
14
14
  raise Keybase::KeybaseNotRunningError unless Keybase.running?
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kbsecret
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - William Woodruff
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-02-10 00:00:00.000000000 Z
11
+ date: 2017-03-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: keybase-unofficial
@@ -52,17 +52,32 @@ dependencies:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
54
  version: 0.10.0
55
+ - !ruby/object:Gem::Dependency
56
+ name: clipboard
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '1.1'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '1.1'
55
69
  description: Manages your passwords, environment, and more via KBFS.
56
70
  email: william@tuffbizz.com
57
71
  executables:
58
- - kbsecret-sessions
59
- - kbsecret-new-session
60
- - kbsecret-new
72
+ - kbsecret-pass
73
+ - kbsecret
61
74
  - kbsecret-rm
62
- - kbsecret-list
63
75
  - kbsecret-login
76
+ - kbsecret-new
64
77
  - kbsecret-env
65
- - kbsecret
78
+ - kbsecret-new-session
79
+ - kbsecret-list
80
+ - kbsecret-sessions
66
81
  extensions: []
67
82
  extra_rdoc_files: []
68
83
  files:
@@ -75,6 +90,7 @@ files:
75
90
  - bin/kbsecret-login
76
91
  - bin/kbsecret-new
77
92
  - bin/kbsecret-new-session
93
+ - bin/kbsecret-pass
78
94
  - bin/kbsecret-rm
79
95
  - bin/kbsecret-sessions
80
96
  - lib/kbsecret.rb