nix-config/pkgs/comma/comma
Bruno BELANYI 2d36ffd96d
All checks were successful
ci/woodpecker/push/check Pipeline was successful
pkgs: comma: rename 'COMMA_{,NIX}PKGS_FLAKE'
This aligns with the rust implementation of this tool [1].

[1]: 17a4f33849
2023-10-12 15:21:06 +00:00

34 lines
648 B
Bash
Executable file

#!/usr/bin/env bash
set -euo pipefail
print_err() {
printf "%s\n" "$1" >&2
}
usage() {
print_err "Usage: , <program> [argument]..."
}
find_program() {
local CANDIDATE
CANDIDATE="$(nix-locate --top-level --minimal --at-root --whole-name "/bin/$1")"
if [ "$(printf '%s\n' "$CANDIDATE" | wc -l)" -gt 1 ]; then
CANDIDATE="$(printf '%s' "$CANDIDATE" | fzf-tmux)"
fi
printf '%s' "$CANDIDATE"
}
if [ $# -lt 1 ]; then
usage
exit 1
fi
PROGRAM="$(find_program "$1")"
if [ -z "$PROGRAM" ]; then
print_err "No match found for $1"
exit 1
fi
nix shell "${COMMA_NIXPKGS_FLAKE:-nixpkgs}#$PROGRAM" -c "$@"