mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-12-29 00:53:57 +00:00
ff1a94e523
The nixpkgs-unstable channel's programs.sqlite was used to identify packages producing exactly one binary, and these automatically added to their package definitions wherever possible.
78 lines
2.0 KiB
Nix
78 lines
2.0 KiB
Nix
{ stdenv
|
|
, lib
|
|
, fetchurl
|
|
, makeWrapper
|
|
, autoPatchelfHook
|
|
, jdk11
|
|
, makeDesktopItem
|
|
, copyDesktopItems
|
|
, runtimeShell
|
|
}:
|
|
stdenv.mkDerivation rec {
|
|
pname = "fiji";
|
|
version = "20201104-1356";
|
|
|
|
src = fetchurl {
|
|
url = "https://downloads.imagej.net/${pname}/archive/${version}/${pname}-nojre.tar.gz";
|
|
sha256 = "1jv4wjjkpid5spr2nk5xlvq3hg687qx1n5zh8zlw48y1y09c4q7a";
|
|
};
|
|
|
|
dontBuild = true;
|
|
|
|
nativeBuildInputs = [ autoPatchelfHook makeWrapper copyDesktopItems ];
|
|
buildInputs = [ stdenv.cc.cc.lib ];
|
|
|
|
desktopItems = [
|
|
(makeDesktopItem {
|
|
name = "fiji";
|
|
exec = "fiji %F";
|
|
tryExec = "fiji";
|
|
icon = "fiji";
|
|
mimeTypes = [ "image/*" ];
|
|
comment = "Scientific Image Analysis";
|
|
desktopName = "Fiji Is Just ImageJ";
|
|
genericName = "Fiji Is Just ImageJ";
|
|
categories = [ "Education" "Science" "ImageProcessing" ];
|
|
startupNotify = true;
|
|
startupWMClass = "fiji-Main";
|
|
})
|
|
];
|
|
|
|
installPhase = ''
|
|
runHook preInstall
|
|
|
|
mkdir -p $out/{bin,fiji,share/pixmaps}
|
|
|
|
cp -R * $out/fiji
|
|
rm -f $out/fiji/jars/imagej-updater-*.jar
|
|
|
|
# Disgusting hack to stop a local desktop entry being created
|
|
cat <<EOF > $out/bin/.fiji-launcher-hack
|
|
#!${runtimeShell}
|
|
exec \$($out/fiji/ImageJ-linux64 --dry-run "\$@")
|
|
EOF
|
|
chmod +x $out/bin/.fiji-launcher-hack
|
|
|
|
makeWrapper $out/bin/.fiji-launcher-hack $out/bin/fiji \
|
|
--prefix PATH : ${lib.makeBinPath [ jdk11 ]} \
|
|
--set JAVA_HOME ${jdk11.home}
|
|
|
|
ln $out/fiji/images/icon.png $out/share/pixmaps/fiji.png
|
|
|
|
runHook postInstall
|
|
'';
|
|
|
|
meta = with lib; {
|
|
homepage = "https://imagej.net/software/fiji/";
|
|
description = "batteries-included distribution of ImageJ2, bundling a lot of plugins which facilitate scientific image analysis";
|
|
mainProgram = "fiji";
|
|
platforms = [ "x86_64-linux" ];
|
|
sourceProvenance = with sourceTypes; [
|
|
binaryBytecode
|
|
binaryNativeCode
|
|
];
|
|
license = with lib.licenses; [ gpl2Plus gpl3Plus bsd2 publicDomain ];
|
|
maintainers = with maintainers; [ ];
|
|
};
|
|
}
|