mirror of
https://github.com/jarun/nnn.git
synced 2025-01-15 13:26:37 +00:00
Merge pull request #1962 from wassup05/gpgs-gpgv
adds plugins gpgs and gpgv
This commit is contained in:
commit
575c8d9065
|
@ -33,6 +33,8 @@ Plugins extend the capabilities of `nnn`. They are _executable_ scripts (or bina
|
|||
| [getplugs](getplugs) | Update plugins to installed `nnn` version | sh | curl |
|
||||
| [gitroot](gitroot) | Cd to the root of current git repo | sh | git |
|
||||
| [gpge](gpge) | Encrypt/decrypt files using GPG [✓] | sh | gpg |
|
||||
| [gpgs](gpgs) | Digitally sign files using GPG [✓] | sh | gpg |
|
||||
| [gpgv](gpgv) | Verify signature files using GPG [✓] | sh | gpg |
|
||||
| [gutenread](gutenread) | Browse, download, read from Project Gutenberg | sh | curl, unzip, w3m<br>[epr](https://github.com/wustho/epr) (optional) |
|
||||
| [gsconnect](gsconnect) | GNOME's implementation of kdeconnect [✓] | sh | gsconnect |
|
||||
| [imgresize](imgresize) | Batch resize images in dir to screen resolution | sh | [imgp](https://github.com/jarun/imgp) |
|
||||
|
|
42
plugins/gpgs
Executable file
42
plugins/gpgs
Executable file
|
@ -0,0 +1,42 @@
|
|||
#!/usr/bin/env sh
|
||||
|
||||
# Description: signs selected files using gpg.
|
||||
# includes options for clearsigning and
|
||||
# detached signing documents as well
|
||||
#
|
||||
# signed and detach signed files are stored with extension .sig
|
||||
# whereas clearsigned one are stored as .asc [by default by gpg]
|
||||
#
|
||||
# Note: The chosen method of signing is applied to all selected files [if selection is chosen]
|
||||
#
|
||||
# Shell: POSIX compliant
|
||||
# Author: wassup05
|
||||
|
||||
file=$1
|
||||
selection=${NNN_SEL:-${XDG_CONFIG_HOME:-$HOME/.config}/nnn/.selection}
|
||||
|
||||
printf "(s)election/(c)urrent? [default=c] "
|
||||
read -r file_resp
|
||||
printf "(s)ign/(c)learsign/(d)etach-sig? [default=s] "
|
||||
read -r sig_resp
|
||||
|
||||
getfiles(){
|
||||
if [ "$file_resp" = "s" ]; then
|
||||
cat "$selection"
|
||||
else
|
||||
printf "%s\0" "$file"
|
||||
fi
|
||||
}
|
||||
|
||||
if [ "$sig_resp" = "c" ]; then
|
||||
getfiles | xargs -0 -I{} gpg --clearsign {}
|
||||
elif [ "$sig_resp" = "d" ]; then
|
||||
getfiles | xargs -0 -I{} gpg --detach-sig --output "{}.sig"
|
||||
else
|
||||
getfiles | xargs -0 -I{} gpg --sign --output "{}.sig" {}
|
||||
fi
|
||||
|
||||
# Clear selection
|
||||
if [ "$file_resp" = "s" ] && [ -p "$NNN_PIPE" ]; then
|
||||
printf "-" > "$NNN_PIPE"
|
||||
fi
|
28
plugins/gpgv
Executable file
28
plugins/gpgv
Executable file
|
@ -0,0 +1,28 @@
|
|||
#!/usr/bin/env sh
|
||||
|
||||
# Description: verifies signed files using gpg.
|
||||
# includes options for detached signing
|
||||
# (in which case it asks for a document to verify)
|
||||
# as well as normal signing
|
||||
#
|
||||
# Note: Uses the current file only [selections not supported]
|
||||
#
|
||||
# Shell: POSIX compliant
|
||||
# Author: wassup05
|
||||
|
||||
file=$1
|
||||
|
||||
printf "(s)ign/(d)etach-sig [default=s] "
|
||||
read -r sig_resp
|
||||
|
||||
if [ "$sig_resp" = "d" ]; then
|
||||
printf "Enter document name: "
|
||||
read -r doc_name
|
||||
command gpg --verify "$file" "$doc_name"
|
||||
else
|
||||
command gpg --verify "$file"
|
||||
fi
|
||||
|
||||
printf "\n"
|
||||
# shellcheck disable=SC2034
|
||||
read -r resp # Waiting for input to go back to nnn
|
Loading…
Reference in a new issue