From fc97a8363523b522c6eb422681367d3120b6fae2 Mon Sep 17 00:00:00 2001 From: Ed Reel Date: Tue, 23 Dec 2025 07:07:22 -0600 Subject: [PATCH] Add hyperfine package (#13962) --- manifest/armv7l/h/hyperfine.filelist | 8 ++++++ manifest/i686/h/hyperfine.filelist | 8 ++++++ manifest/x86_64/h/hyperfine.filelist | 8 ++++++ packages/hyperfine.rb | 40 ++++++++++++++++++++++++++++ tests/package/h/hyperfine | 3 +++ tools/packages.yaml | 5 ++++ 6 files changed, 72 insertions(+) create mode 100644 manifest/armv7l/h/hyperfine.filelist create mode 100644 manifest/i686/h/hyperfine.filelist create mode 100644 manifest/x86_64/h/hyperfine.filelist create mode 100644 packages/hyperfine.rb create mode 100755 tests/package/h/hyperfine diff --git a/manifest/armv7l/h/hyperfine.filelist b/manifest/armv7l/h/hyperfine.filelist new file mode 100644 index 000000000..b8606ddab --- /dev/null +++ b/manifest/armv7l/h/hyperfine.filelist @@ -0,0 +1,8 @@ +# Total size: 1243026 +/usr/local/bin/hyperfine +/usr/local/etc/bash.d/10-hyperfine +/usr/local/share/hyperfine/CHANGELOG.md +/usr/local/share/hyperfine/LICENSE-APACHE +/usr/local/share/hyperfine/LICENSE-MIT +/usr/local/share/hyperfine/README.md +/usr/local/share/man/man1/hyperfine.1.zst diff --git a/manifest/i686/h/hyperfine.filelist b/manifest/i686/h/hyperfine.filelist new file mode 100644 index 000000000..35d0e4010 --- /dev/null +++ b/manifest/i686/h/hyperfine.filelist @@ -0,0 +1,8 @@ +# Total size: 1402674 +/usr/local/bin/hyperfine +/usr/local/etc/bash.d/10-hyperfine +/usr/local/share/hyperfine/CHANGELOG.md +/usr/local/share/hyperfine/LICENSE-APACHE +/usr/local/share/hyperfine/LICENSE-MIT +/usr/local/share/hyperfine/README.md +/usr/local/share/man/man1/hyperfine.1.zst diff --git a/manifest/x86_64/h/hyperfine.filelist b/manifest/x86_64/h/hyperfine.filelist new file mode 100644 index 000000000..476478171 --- /dev/null +++ b/manifest/x86_64/h/hyperfine.filelist @@ -0,0 +1,8 @@ +# Total size: 1425054 +/usr/local/bin/hyperfine +/usr/local/etc/bash.d/10-hyperfine +/usr/local/share/hyperfine/CHANGELOG.md +/usr/local/share/hyperfine/LICENSE-APACHE +/usr/local/share/hyperfine/LICENSE-MIT +/usr/local/share/hyperfine/README.md +/usr/local/share/man/man1/hyperfine.1.zst diff --git a/packages/hyperfine.rb b/packages/hyperfine.rb new file mode 100644 index 000000000..0d46f08b8 --- /dev/null +++ b/packages/hyperfine.rb @@ -0,0 +1,40 @@ +require 'package' + +class Hyperfine < Package + description 'A command-line benchmarking tool' + homepage 'https://github.com/sharkdp/hyperfine' + version '1.20.0' + license 'Apache-2.0, MIT' + compatibility 'all' + source_url({ + aarch64: "https://github.com/sharkdp/hyperfine/releases/download/v#{version}/hyperfine-v#{version}-arm-unknown-linux-gnueabihf.tar.gz", + armv7l: "https://github.com/sharkdp/hyperfine/releases/download/v#{version}/hyperfine-v#{version}-arm-unknown-linux-gnueabihf.tar.gz", + i686: "https://github.com/sharkdp/hyperfine/releases/download/v#{version}/hyperfine-v#{version}-i686-unknown-linux-gnu.tar.gz", + x86_64: "https://github.com/sharkdp/hyperfine/releases/download/v#{version}/hyperfine-v#{version}-x86_64-unknown-linux-gnu.tar.gz" + }) + source_sha256({ + aarch64: 'f13c6ae21380d90b03310bd74a672db579a6a45d1b5df91bf2e06baf8f1cf4fd', + armv7l: 'f13c6ae21380d90b03310bd74a672db579a6a45d1b5df91bf2e06baf8f1cf4fd', + i686: 'a5209e023c9396a94251614218ece32c0c0ae219fb159245d53c8cee5f9d9eeb', + x86_64: '63ad53934062118f5b0be11785e0bb1603d4b91667d1921f2fd8df9a8712040a' + }) + + no_compile_needed + no_shrink + + def self.install + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/bin" + FileUtils.mkdir_p "#{CREW_DEST_MAN_PREFIX}/man1" + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/bash.d" + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/share/hyperfine" + FileUtils.mv 'hyperfine', "#{CREW_DEST_PREFIX}/bin" + FileUtils.mv 'hyperfine.1', "#{CREW_DEST_MAN_PREFIX}/man1" + FileUtils.mv 'autocomplete/hyperfine.bash', "#{CREW_DEST_PREFIX}/etc/bash.d/10-hyperfine" + FileUtils.rm_rf 'autocomplete' + FileUtils.mv Dir['*'], "#{CREW_DEST_PREFIX}/share/hyperfine" + end + + def self.postinstall + ExitMessage.add "\nType 'hyperfine -h' to get started.\n" + end +end diff --git a/tests/package/h/hyperfine b/tests/package/h/hyperfine new file mode 100755 index 000000000..21fdaeca3 --- /dev/null +++ b/tests/package/h/hyperfine @@ -0,0 +1,3 @@ +#!/bin/bash +hyperfine -h | head +hyperfine -V diff --git a/tools/packages.yaml b/tools/packages.yaml index 813d69ee4..f1e868bff 100644 --- a/tools/packages.yaml +++ b/tools/packages.yaml @@ -3380,6 +3380,11 @@ url: https://github.com/open-mpi/hwloc/tags activity: medium --- kind: url +name: hyperfine +url: https://github.com/sharkdp/hyperfine/releases +activity: medium +--- +kind: url name: hyphen url: https://github.com/hunspell/hyphen/ activity: none