nixpkgs-merge-bot[bot] 3ae3f55372
qhexedit2: 0.8.9 -> 0.9.0 (#385711)
Co-authored-by: Pandapip1 <gavinnjohn@gmail.com>
2025-03-13 19:39:12 +00:00

66 lines
1.5 KiB
Nix

{
lib,
stdenv,
fetchFromGitHub,
qt6,
nix-update-script,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "qhexedit2";
version = "0.9.0";
src = fetchFromGitHub {
owner = "Simsys";
repo = "qhexedit2";
tag = "v${finalAttrs.version}";
hash = "sha256-GIBpdycuQ0F/rlyRznS02nE1kfR4GedZuTrGIwE9AoU=";
};
postPatch = ''
# Replace QPallete::Background with QPallete::Window in all files, since QPallete::Background was removed in Qt 6
find . -type f -exec sed -i 's/QPalette::Background/QPalette::Window/g' {} +
'';
nativeBuildInputs = [
qt6.qmake
qt6.wrapQtAppsHook
];
buildInputs = [
qt6.qtbase
qt6.qttools
qt6.qtwayland
];
qmakeFlags = [
"./example/qhexedit.pro"
];
# A custom installPhase is needed because no [native] build input provides an installPhase hook
installPhase = ''
runHook preInstall
mkdir -p $out/bin
cp qhexedit $out/bin
runHook postInstall
'';
passthru = {
updateScript = nix-update-script { };
# I would use testers.testVersion except for some reason it fails, even with my patches that add a --version flag
# TODO: Debug why testVersion reports a non-zero status code in the nix sandbox
};
meta = {
description = "Hex Editor for Qt";
homepage = "https://github.com/Simsys/qhexedit2";
changelog = "https://github.com/Simsys/qhexedit2/releases";
mainProgram = "qhexedit";
license = lib.licenses.lgpl21Only;
platforms = lib.platforms.all;
maintainers = with lib.maintainers; [ pandapip1 ];
};
})