fix url to passed
This commit is contained in:
parent
da232fb8b9
commit
d0f1624720
@ -66,7 +66,4 @@ Also included is an import script for keepass2 databases. It's the same script t
|
|||||||
## Alternative
|
## Alternative
|
||||||
|
|
||||||
jreinert has written a roughly compatible tool to rofi-pass. It has less features, but definately saner code.
|
jreinert has written a roughly compatible tool to rofi-pass. It has less features, but definately saner code.
|
||||||
Also he provided a nice little script called `passed` to change your fieldnames. [autopass](https://github.com/jreinert/autopass)
|
Also he provided a nice little script called `passed` to change your fieldnames. [autopass](https://github.com/jreinert/passed)
|
||||||
|
|
||||||
I provide a copy of the script in this repository, just in case.
|
|
||||||
Usage is: passed 's/foo/bar'
|
|
||||||
|
51
passed
51
passed
@ -1,51 +0,0 @@
|
|||||||
#!/usr/bin/env ruby
|
|
||||||
|
|
||||||
# written by jreiner, mirror from
|
|
||||||
# https://github.com/jreinert/autopass/blob/master/passed
|
|
||||||
|
|
||||||
abort("usage: #{$PROGRAM_NAME} <sed options>") if ARGV.empty?
|
|
||||||
|
|
||||||
sed_command = ['sed', *ARGV]
|
|
||||||
PASS_DIR = ENV['PASSWORD_STORE_DIR'] || "#{ENV['HOME']}/.password-store"
|
|
||||||
|
|
||||||
def keys(dir)
|
|
||||||
key_file = "#{dir}/.gpg-id"
|
|
||||||
return unless File.exist?(key_file)
|
|
||||||
File.read(key_file).lines.map(&:chomp)
|
|
||||||
end
|
|
||||||
|
|
||||||
def each_entry_with_key(dir = PASS_DIR, keys = nil, &block)
|
|
||||||
keys = keys(dir) || keys
|
|
||||||
fail('no encryption keys found') unless keys
|
|
||||||
Dir[File.join(dir, '*.gpg')].each do |entry|
|
|
||||||
yield(entry, keys)
|
|
||||||
end
|
|
||||||
|
|
||||||
Dir[File.join(dir, '*/')].each do |subdir|
|
|
||||||
each_entry_with_key(subdir, keys, &block)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
each_entry_with_key do |entry, keys|
|
|
||||||
new_content = nil
|
|
||||||
IO.popen(['gpg', '--batch', '-q', '-d', entry]) do |gpg|
|
|
||||||
IO.popen(sed_command, 'w+') do |sed|
|
|
||||||
sed.write gpg.read
|
|
||||||
sed.close_write
|
|
||||||
new_content = sed.read
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
puts entry
|
|
||||||
puts new_content
|
|
||||||
puts 'overwrite? (y/N)'
|
|
||||||
answer = STDIN.gets
|
|
||||||
next unless answer && answer.chomp =~ /^y/i
|
|
||||||
|
|
||||||
recipients = keys.map { |key| ['-r', key] }.flatten
|
|
||||||
File.delete(entry)
|
|
||||||
encrypt_cmd = ['gpg', '--batch', '-q', '-e', '-o', entry, *recipients]
|
|
||||||
IO.popen(encrypt_cmd, 'w+') do |gpg|
|
|
||||||
gpg.write(new_content)
|
|
||||||
end
|
|
||||||
end
|
|
Loading…
x
Reference in New Issue
Block a user