forked from mirrors/nixpkgs
imagej: reformat expression
- Use 1 line per input argument. - Don't use let ... in if not needed. - Use ${version} in url string. - Run hooks in explicit installPhase.
This commit is contained in:
parent
c223fd6007
commit
e1d6051d81
|
@ -1,48 +1,51 @@
|
|||
{ lib, stdenv, fetchurl, jre, unzip, makeWrapper }:
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchurl
|
||||
, jre
|
||||
, unzip
|
||||
, makeWrapper
|
||||
}:
|
||||
|
||||
# Note:
|
||||
# - User config dir is hard coded by upstream to $HOME/.imagej on linux systems
|
||||
# and to $HOME/Library/Preferences on macOS.
|
||||
# (The current trend appears to be to use $HOME/.config/imagej
|
||||
# on linux systems, but we here do not attempt to fix it.)
|
||||
stdenv.mkDerivation {
|
||||
pname = "imagej";
|
||||
version = "150";
|
||||
|
||||
let
|
||||
imagej150 = stdenv.mkDerivation {
|
||||
pname = "imagej";
|
||||
version = "150";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://wsr.imagej.net/distros/cross-platform/ij150.zip";
|
||||
sha256 = "97aba6fc5eb908f5160243aebcdc4965726693cb1353d9c0d71b8f5dd832cb7b";
|
||||
};
|
||||
nativeBuildInputs = [ makeWrapper unzip ];
|
||||
inherit jre;
|
||||
|
||||
# JAR files that are intended to be used by other packages
|
||||
# should go to $out/share/java.
|
||||
# (Some uses ij.jar as a library not as a standalone program.)
|
||||
installPhase = ''
|
||||
mkdir -p $out/share/java
|
||||
# Read permisssion suffices for the jar and others.
|
||||
# Simple cp shall clear suid bits, if any.
|
||||
cp ij.jar $out/share/java
|
||||
cp -dR luts macros plugins $out/share
|
||||
mkdir $out/bin
|
||||
makeWrapper ${jre}/bin/java $out/bin/imagej \
|
||||
--add-flags "-jar $out/share/java/ij.jar -ijpath $out/share"
|
||||
'';
|
||||
meta = with lib; {
|
||||
homepage = "https://imagej.nih.gov/ij/";
|
||||
description = "Image processing and analysis in Java";
|
||||
longDescription = ''
|
||||
ImageJ is a public domain Java image processing program
|
||||
inspired by NIH Image for the Macintosh.
|
||||
It runs on any computer with a Java 1.4 or later virtual machine.
|
||||
'';
|
||||
license = licenses.publicDomain;
|
||||
platforms = with platforms; linux ++ darwin;
|
||||
maintainers = with maintainers; [ yuriaisaka ];
|
||||
};
|
||||
src = fetchurl {
|
||||
url = "https://wsr.imagej.net/distros/cross-platform/ij${version}.zip";
|
||||
sha256 = "97aba6fc5eb908f5160243aebcdc4965726693cb1353d9c0d71b8f5dd832cb7b";
|
||||
};
|
||||
in
|
||||
imagej150
|
||||
nativeBuildInputs = [ makeWrapper unzip ];
|
||||
passthru = {
|
||||
inherit jre;
|
||||
};
|
||||
|
||||
# JAR files that are intended to be used by other packages
|
||||
# should go to $out/share/java.
|
||||
# (Some uses ij.jar as a library not as a standalone program.)
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out/share/java $out/bin
|
||||
# Read permisssion suffices for the jar and others.
|
||||
# Simple cp shall clear suid bits, if any.
|
||||
cp ij.jar $out/share/java
|
||||
cp -dR luts macros plugins $out/share
|
||||
makeWrapper ${jre}/bin/java $out/bin/imagej \
|
||||
--add-flags "-jar $out/share/java/ij.jar -ijpath $out/share"
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://imagej.nih.gov/ij/";
|
||||
description = "Image processing and analysis in Java";
|
||||
longDescription = ''
|
||||
ImageJ is a public domain Java image processing program
|
||||
inspired by NIH Image for the Macintosh.
|
||||
It runs on any computer with a Java 1.4 or later virtual machine.
|
||||
'';
|
||||
license = licenses.publicDomain;
|
||||
platforms = platforms.unix;
|
||||
maintainers = with maintainers; [ yuriaisaka ];
|
||||
};
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue