e7ec2969af
GitOrigin-RevId: 9b19f5e77dd906cb52dade0b7bd280339d2a1f3d
79 lines
1.8 KiB
Nix
79 lines
1.8 KiB
Nix
{ lib
|
|
, mkDerivation
|
|
, fetchpatch
|
|
, fetchFromGitHub
|
|
, cmake
|
|
, qtbase
|
|
, wrapQtAppsHook
|
|
, libraw
|
|
, exiv2
|
|
, zlib
|
|
, alglib
|
|
, pkg-config
|
|
, makeDesktopItem
|
|
, copyDesktopItems
|
|
}:
|
|
|
|
mkDerivation rec {
|
|
pname = "hdrmerge";
|
|
version = "unstable-2023-01-04";
|
|
src = fetchFromGitHub {
|
|
owner = "jcelaya";
|
|
repo = "hdrmerge";
|
|
rev = "ca38b54f980564942a7f2b014a5f57a64c1d9019";
|
|
hash = "sha256-DleYgpDXP0NvbmEURXnBfe3OYnT1CaQq+Mw93JQQprE=";
|
|
};
|
|
|
|
nativeBuildInputs = [
|
|
cmake
|
|
pkg-config
|
|
wrapQtAppsHook
|
|
copyDesktopItems
|
|
];
|
|
|
|
buildInputs = [ qtbase libraw exiv2 zlib alglib ];
|
|
|
|
cmakeFlags = [
|
|
"-DALGLIB_DIR:PATH=${alglib}"
|
|
];
|
|
|
|
CXXFLAGS = [
|
|
# GCC 13: error: 'uint32_t' does not name a type
|
|
"-include cstdint"
|
|
];
|
|
|
|
patches = [
|
|
# https://github.com/jcelaya/hdrmerge/pull/222
|
|
(fetchpatch {
|
|
name = "exiv2-0.28.patch";
|
|
url = "https://github.com/jcelaya/hdrmerge/commit/377d8e6f3c7cdd1a45b63bce2493ad177dde03fb.patch";
|
|
hash = "sha256-lXHML6zGkVeWKvmY5ECoJL2xjmtZz77XJd5prpgJiZo=";
|
|
})
|
|
];
|
|
|
|
desktopItems = [
|
|
(makeDesktopItem {
|
|
name = "HDRMerge";
|
|
genericName = "HDR raw image merge";
|
|
desktopName = "HDRMerge";
|
|
comment = meta.description;
|
|
icon = "hdrmerge";
|
|
exec = "hdrmerge %F";
|
|
categories = [ "Graphics" ];
|
|
mimeTypes = [ "image/x-dcraw" "image/x-adobe-dng" ];
|
|
terminal = false;
|
|
})
|
|
];
|
|
|
|
postInstall = ''
|
|
install -Dm444 ../data/images/icon.png $out/share/icons/hicolor/128x128/apps/hdrmerge.png
|
|
'';
|
|
|
|
meta = with lib; {
|
|
homepage = "https://github.com/jcelaya/hdrmerge";
|
|
description = "Combines two or more raw images into an HDR";
|
|
license = licenses.gpl3Plus;
|
|
platforms = platforms.linux;
|
|
maintainers = [ maintainers.paperdigits ];
|
|
};
|
|
}
|