From 76f6b5efdf7d75fdc0ad7c82bee58cbad1692e1c Mon Sep 17 00:00:00 2001 From: George Macon Date: Thu, 26 Sep 2024 16:10:03 -0400 Subject: [PATCH] unrar-free: add setupHook This adds a setupHook to unrar-free which is parallel to the one in unrar. This enables the unpackPhase to automatically use unrar-free to unpack RAR files. --- pkgs/by-name/un/unrar-free/package.nix | 2 ++ pkgs/by-name/un/unrar-free/setup-hook.sh | 5 +++++ 2 files changed, 7 insertions(+) create mode 100644 pkgs/by-name/un/unrar-free/setup-hook.sh diff --git a/pkgs/by-name/un/unrar-free/package.nix b/pkgs/by-name/un/unrar-free/package.nix index 72ca626c8933..755d9de906f7 100644 --- a/pkgs/by-name/un/unrar-free/package.nix +++ b/pkgs/by-name/un/unrar-free/package.nix @@ -21,6 +21,8 @@ stdenv.mkDerivation (finalAttrs: { buildInputs = [ libarchive ]; + setupHook = ./setup-hook.sh; + meta = { description = "Free utility to extract files from RAR archives"; longDescription = '' diff --git a/pkgs/by-name/un/unrar-free/setup-hook.sh b/pkgs/by-name/un/unrar-free/setup-hook.sh new file mode 100644 index 000000000000..347bf4c125d2 --- /dev/null +++ b/pkgs/by-name/un/unrar-free/setup-hook.sh @@ -0,0 +1,5 @@ +unpackCmdHooks+=(_tryUnrarFree) +_tryUnrarFree() { + if ! [[ "$curSrc" =~ \.rar$ ]]; then return 1; fi + unrar-free -x "$curSrc" >/dev/null +}