From f29f5799d659c2ae227230aab665cb476b68c08d Mon Sep 17 00:00:00 2001 From: George Rawlinson Date: Tue, 14 Jun 2022 17:14:41 +1200 Subject: [PATCH] feat(zsh): add archlinux helper functions --- zsh/.config/zsh/source/archlinux-contrib.zsh | 27 ++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 zsh/.config/zsh/source/archlinux-contrib.zsh diff --git a/zsh/.config/zsh/source/archlinux-contrib.zsh b/zsh/.config/zsh/source/archlinux-contrib.zsh new file mode 100644 index 0000000..1709a39 --- /dev/null +++ b/zsh/.config/zsh/source/archlinux-contrib.zsh @@ -0,0 +1,27 @@ +# +# helper functions for Arch Linux related work +# + +# generates a deterministic hash of the current working directory +# TODO expand hash algos to use makepkg's blessed algos +# e.g hashdir $ALGO where ALGO=md5|sha1|sha224|sha256|sha384|sha512|b2 +# NB: i don't trust anything before sha256... +function hashdir() { + find \ + . \ + -type f \ + -not -path '*/\.git/*' \ + -exec b2sum {} + | \ + LC_ALL=C sort | \ + b2sum | \ + cut -d ' ' -f 1 +} + +# obtain commit hash for a specific reference/tag +function tag2commit() { + local repository=$1 + local tag=$2 + + git ls-remote $repository $tag +} +# vim: ft=zsh expandtab tabstop=2 shiftwidth=2