summaryrefslogtreecommitdiff
path: root/home-manager/sh/fuzzel.nix
diff options
context:
space:
mode:
authorJakub Trzeciak <jptrzy@gmail.com>2023-11-09 12:23:29 +0100
committerJakub Trzeciak <jptrzy@gmail.com>2023-11-09 12:23:29 +0100
commitb31392da2708dd117aaaff96260f842345fa2852 (patch)
tree67d282f0e6026dd3c6494d8bee4abe17080ca2d0 /home-manager/sh/fuzzel.nix
parenta0274f54b9af1404b62892df19916b9db18196cb (diff)
downloadnixos-b31392da2708dd117aaaff96260f842345fa2852.tar.gz
nixos-b31392da2708dd117aaaff96260f842345fa2852.tar.bz2
nixos-b31392da2708dd117aaaff96260f842345fa2852.zip
Modrinth App Testing
Diffstat (limited to 'home-manager/sh/fuzzel.nix')
-rw-r--r--home-manager/sh/fuzzel.nix31
1 files changed, 31 insertions, 0 deletions
diff --git a/home-manager/sh/fuzzel.nix b/home-manager/sh/fuzzel.nix
new file mode 100644
index 0000000..01f1125
--- /dev/null
+++ b/home-manager/sh/fuzzel.nix
@@ -0,0 +1,31 @@
+
+{ pkgs }: let
+ #emojis = pkgs.writeText "emojis" ./emojis;
+
+ fuzzel-emoji = pkgs.writeShellScriptBin "fuzzel-emoji" ''
+ emoji=$(${pkgs.fuzzel}/bin/fuzzel -d -l 20 "$@" < "${./emojis}")
+
+ printf "%s" "''${emoji%% *}" | ${pkgs.wl-clipboard}/bin/wl-copy
+ '';
+
+ fuzzel-pass = pkgs.writeShellScriptBin "fuzzel-pass" ''
+ shopt -s nullglob globstar
+
+ prefix=''${PASSWORD_STORE_DIR-~/.password-store}
+ password_files=( "$prefix"/**/*.gpg )
+ password_files=( "''${password_files[@]#"$prefix"/}" )
+ password_files=( "''${password_files[@]%.gpg}" )
+
+ password=$(printf '%s\n' "''${password_files[@]}" | ${pkgs.fuzzel}/bin/fuzzel -d "$@")
+
+ [[ -n $password ]] || exit
+
+ ${pkgs.pass}/bin/pass show -c "$password" 2>/dev/null
+ '';
+in pkgs.symlinkJoin {
+ name = "fuzzel";
+ paths = [
+ fuzzel-emoji
+ fuzzel-pass
+ ];
+}
Software created with 💖