diff options
author | K900 <me@0upti.me> | 2024-01-09 22:42:37 +0300 |
---|---|---|
committer | K900 <me@0upti.me> | 2024-01-09 22:42:37 +0300 |
commit | 838aefefc3ff5e4c8e29efe98cd38284d179d98a (patch) | |
tree | db9d4b01f4c58b9e062386edbf91c3351903f999 /pkgs/by-name/we | |
parent | d8364a95c7048af5d4036f1bc1d03d448a8bb017 (diff) | |
parent | 8736250fc2dd54702e7d53936b672e20f44fc9d1 (diff) | |
download | nixlib-838aefefc3ff5e4c8e29efe98cd38284d179d98a.tar nixlib-838aefefc3ff5e4c8e29efe98cd38284d179d98a.tar.gz nixlib-838aefefc3ff5e4c8e29efe98cd38284d179d98a.tar.bz2 nixlib-838aefefc3ff5e4c8e29efe98cd38284d179d98a.tar.lz nixlib-838aefefc3ff5e4c8e29efe98cd38284d179d98a.tar.xz nixlib-838aefefc3ff5e4c8e29efe98cd38284d179d98a.tar.zst nixlib-838aefefc3ff5e4c8e29efe98cd38284d179d98a.zip |
Merge remote-tracking branch 'origin/master' into staging-next
Diffstat (limited to 'pkgs/by-name/we')
-rw-r--r-- | pkgs/by-name/we/weasis/package.nix | 80 |
1 files changed, 80 insertions, 0 deletions
diff --git a/pkgs/by-name/we/weasis/package.nix b/pkgs/by-name/we/weasis/package.nix new file mode 100644 index 000000000000..4e15d43524fb --- /dev/null +++ b/pkgs/by-name/we/weasis/package.nix @@ -0,0 +1,80 @@ +{ lib +, stdenv +, fetchzip +, jre +, copyDesktopItems +, makeDesktopItem +}: + +let + throwSystem = throw "Unsupported system: ${stdenv.system}"; + platform = { + "x86_64-linux" = "linux-x86-64"; + }.${stdenv.system} or throwSystem; + +in stdenv.mkDerivation rec { + pname = "weasis"; + version = "4.2.1"; + + # Their build instructions indicate to use the packaging script + src = fetchzip { + url = "https://github.com/nroduit/Weasis/releases/download/v${version}/weasis-native.zip"; + hash = "sha256-HDlylpe8cHZRaIXndfGh6XmUn8o2PQB1Av7hLCp679U="; + stripRoot = false; + }; + + nativeBuildInputs = [ + copyDesktopItems + ]; + + desktopItems = [ + (makeDesktopItem { + name = "DICOMizer"; + exec = "Dicomizer"; + icon = "Dicomizer"; + desktopName = "DICOMizer"; + comment = "Convert standard images into DICOM"; + }) + (makeDesktopItem { + name = "Weasis"; + exec = "Weasis"; + icon = "Weasis"; + desktopName = "Weasis"; + comment = meta.description; + }) + ]; + + postPatch = '' + patchShebangs ./build/script/package-weasis.sh + ''; + + buildPhase = '' + runHook preBuild + + ./build/script/package-weasis.sh --no-installer --jdk ${jre} + + runHook postBuild + ''; + + installPhase = '' + runHook preInstall + + mkdir -p $out/share/{applications,pixmaps} + + mv weasis-${platform}-jdk${lib.versions.major jre.version}-${version}/Weasis/* $out/ + mv $out/lib/*.png $out/share/pixmaps/ + + runHook postInstall + ''; + + meta = { + description = "Multipurpose standalone and web-based DICOM viewer with a highly modular architecture"; + homepage = "https://weasis.org"; + # Using changelog from releases as it is more accurate + changelog = "https://github.com/nroduit/Weasis/releases/tag/v${version}"; + license = with lib.licenses; [ asl20 epl20 ]; + maintainers = [ lib.maintainers.wolfangaukang ]; + platforms = [ "x86_64-linux" ]; + mainProgram = "Weasis"; + }; +} |