emaryn 2025-04-29 23:41:00 +08:00
parent 81229d1108
commit 01ffdd72b7

View file

@ -4,40 +4,31 @@
fetchFromGitHub, fetchFromGitHub,
installShellFiles, installShellFiles,
stdenv, stdenv,
darwin,
unixtools, unixtools,
}: }:
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage (finalAttrs: {
pname = "halp"; pname = "halp";
version = "0.1.7"; version = "0.2.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "orhun"; owner = "orhun";
repo = "halp"; repo = "halp";
rev = "v${version}"; tag = "v${finalAttrs.version}";
hash = "sha256-SeBponGeQWKjbiS4GL8YA7y92BqLL+ja6ZSKAI3CeRM="; hash = "sha256-tJ95rvYjqQn0ZTlEdqfs/LbyfBP7PqnevxX8b1VfokA=";
}; };
useFetchCargoVendor = true; useFetchCargoVendor = true;
cargoHash = "sha256-q+vfc0EQtGU8YsY11oun/F0OPffsjvB336y3qnerIDY="; cargoHash = "sha256-sJdZjTzfawwBK8KxQP7zvn+kByCMSxrrQjY1t9RWmhU=";
patches = [ patches = [
# patch tests to point to the correct target directory # patch tests to point to the correct target directory
./fix-target-dir.patch ./fix-target-dir.patch
]; ];
nativeBuildInputs = [ nativeBuildInputs = [ installShellFiles ];
installShellFiles
];
buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [ nativeCheckInputs = [ unixtools.script ];
darwin.apple_sdk.frameworks.Security
];
nativeCheckInputs = [
unixtools.script
];
# tests are failing on darwin # tests are failing on darwin
doCheck = !stdenv.hostPlatform.isDarwin; doCheck = !stdenv.hostPlatform.isDarwin;
@ -45,6 +36,9 @@ rustPlatform.buildRustPackage rec {
checkFlags = [ checkFlags = [
# requires internet access # requires internet access
"--skip=helper::docs::cheat::tests::test_fetch_cheat_sheet" "--skip=helper::docs::cheat::tests::test_fetch_cheat_sheet"
"--skip=helper::docs::cheat_sh::tests::test_fetch_cheat_sheet"
"--skip=helper::docs::cheatsheets::tests::test_fetch_cheatsheets"
"--skip=helper::docs::eg::tests::test_eg_page_fetch"
]; ];
postPatch = '' postPatch = ''
@ -71,15 +65,15 @@ rustPlatform.buildRustPackage rec {
rm $out/bin/halp-{completions,mangen,test} rm $out/bin/halp-{completions,mangen,test}
''; '';
meta = with lib; { meta = {
description = "CLI tool to get help with CLI tools"; description = "CLI tool to get help with CLI tools";
homepage = "https://github.com/orhun/halp"; homepage = "https://github.com/orhun/halp";
changelog = "https://github.com/orhun/halp/blob/${src.rev}/CHANGELOG.md"; changelog = "https://github.com/orhun/halp/blob/v${finalAttrs.version}/CHANGELOG.md";
license = with licenses; [ license = with lib.licenses; [
asl20 asl20
mit mit
]; ];
maintainers = with maintainers; [ figsoda ]; maintainers = with lib.maintainers; [ figsoda ];
mainProgram = "halp"; mainProgram = "halp";
}; };
} })