aboutsummaryrefslogtreecommitdiffstats
path: root/modules/scripts/gpg-backup
diff options
context:
space:
mode:
authorArpit Chakladar <arpitchakladar+git@gmail.com>2026-08-16 20:09:01 +0530
committerArpit Chakladar <arpitchakladar+git@gmail.com>2026-08-29 03:50:27 +0530
commit131855d2da43d56afae684d9d78743ba24800d0f (patch)
tree1aedef93523f374bab3cd9f0b453547da3b7bc7e /modules/scripts/gpg-backup
parent2d482bcb7f1f36d8ea017f5fa8091a896faead49 (diff)
downloadhome-manager-config-131855d2da43d56afae684d9d78743ba24800d0f.tar.gz
home-manager-config-131855d2da43d56afae684d9d78743ba24800d0f.zip
feat: completions for all scripts zsh
- Added zsh completions for git-log-graph, gpg-backup and screen-recording - Using bash for the scripts, for consistency and cross platform support
Diffstat (limited to 'modules/scripts/gpg-backup')
-rw-r--r--modules/scripts/gpg-backup/completion.zsh23
-rw-r--r--modules/scripts/gpg-backup/default.nix2
-rw-r--r--modules/scripts/gpg-backup/script.sh1
3 files changed, 26 insertions, 0 deletions
diff --git a/modules/scripts/gpg-backup/completion.zsh b/modules/scripts/gpg-backup/completion.zsh
new file mode 100644
index 0000000..f47bbe8
--- /dev/null
+++ b/modules/scripts/gpg-backup/completion.zsh
@@ -0,0 +1,23 @@
+#compdef gpg-backup
+
+_arguments \
+ '1: :->cmds' \
+ '*::arg:->args'
+
+case $state in
+ cmds)
+ local -a commands
+ commands=(
+ 'export:Export all GPG keys to a passphrase-protected file'
+ 'import:Import GPG keys from a backup file'
+ )
+ _describe 'command' commands
+ ;;
+ args)
+ case $words[1] in
+ export|import)
+ _files
+ ;;
+ esac
+ ;;
+esac
diff --git a/modules/scripts/gpg-backup/default.nix b/modules/scripts/gpg-backup/default.nix
index d91c839..1ab41b4 100644
--- a/modules/scripts/gpg-backup/default.nix
+++ b/modules/scripts/gpg-backup/default.nix
@@ -11,11 +11,13 @@ let
path = ./script.sh;
description = "Export/import all GPG keys as a single passphrase-protected file with maximum S2K iteration count\nUsage: gpg-backup export filename.gpg | gpg-backup import filename.gpg";
deps = [
+ pkgs.bash
pkgs.gnupg
pkgs.gnutar
pkgs.coreutils
pkgs.findutils
];
+ completion = builtins.readFile ./completion.zsh;
inherit config;
};
in
diff --git a/modules/scripts/gpg-backup/script.sh b/modules/scripts/gpg-backup/script.sh
index c8e7363..57c216b 100644
--- a/modules/scripts/gpg-backup/script.sh
+++ b/modules/scripts/gpg-backup/script.sh
@@ -1,3 +1,4 @@
+#!/usr/bin/env bash
set -euo pipefail
WORKDIR="$(mktemp -d)"