summary refs log tree commit diff
path: root/pkgs/applications/science/logic
diff options
context:
space:
mode:
authorFliegendeWurst <2012gdwu+github@posteo.de>2022-01-21 18:57:20 +0100
committerFliegendeWurst <2012gdwu+github@posteo.de>2022-01-29 10:14:54 +0100
commit48a133a0667a34a2d54339e674759dc5b6019636 (patch)
tree780db9eafb5482652d064f4633950d8561d63feb /pkgs/applications/science/logic
parent28b43ffd548e91e5c32ad63c6ea12769eb4f0327 (diff)
downloadnixpkgs-48a133a0667a34a2d54339e674759dc5b6019636.tar
nixpkgs-48a133a0667a34a2d54339e674759dc5b6019636.tar.gz
nixpkgs-48a133a0667a34a2d54339e674759dc5b6019636.tar.bz2
nixpkgs-48a133a0667a34a2d54339e674759dc5b6019636.tar.lz
nixpkgs-48a133a0667a34a2d54339e674759dc5b6019636.tar.xz
nixpkgs-48a133a0667a34a2d54339e674759dc5b6019636.tar.zst
nixpkgs-48a133a0667a34a2d54339e674759dc5b6019636.zip
key: add a desktop item
Diffstat (limited to 'pkgs/applications/science/logic')
-rw-r--r--pkgs/applications/science/logic/key/default.nix27
1 files changed, 27 insertions, 0 deletions
diff --git a/pkgs/applications/science/logic/key/default.nix b/pkgs/applications/science/logic/key/default.nix
index e6cd5038715..769fe6aff23 100644
--- a/pkgs/applications/science/logic/key/default.nix
+++ b/pkgs/applications/science/logic/key/default.nix
@@ -5,6 +5,8 @@
 , perl
 , jre
 , makeWrapper
+, makeDesktopItem
+, copyDesktopItems
 , testVersion
 , key
 }:
@@ -45,12 +47,29 @@ in stdenv.mkDerivation rec {
     jdk
     gradle_7
     makeWrapper
+    copyDesktopItems
+  ];
+
+  executable-name = "KeY";
+
+  desktopItems = [
+    (makeDesktopItem {
+      name = "KeY";
+      exec = executable-name;
+      icon = "key";
+      comment = meta.description;
+      desktopName = "KeY";
+      genericName = "KeY";
+      categories = "Science;";
+    })
   ];
 
   # disable tests (broken on darwin)
   gradleAction = if stdenv.isDarwin then "assemble" else "build";
 
   buildPhase = ''
+    runHook preBuild
+
     export GRADLE_USER_HOME=$(mktemp -d)
     # https://github.com/gradle/gradle/issues/4426
     ${lib.optionalString stdenv.isDarwin "export TERM=dumb"}
@@ -59,14 +78,22 @@ in stdenv.mkDerivation rec {
     cat <(echo "pluginManagement { repositories { maven { url '${deps}' } } }") settings.gradle > settings_new.gradle
     mv settings_new.gradle settings.gradle
     gradle --offline --no-daemon ${gradleAction}
+
+    runHook postBuild
   '';
 
   installPhase = ''
+    runHook preInstall
+
     mkdir -p $out/share/java
     cp key.ui/build/libs/key-*-exe.jar $out/share/java/KeY.jar
     mkdir -p $out/bin
+    mkdir -p $out/share/icons/hicolor/256x256/apps
+    cp key.ui/src/main/resources/de/uka/ilkd/key/gui/images/key-color-icon-square.png $out/share/icons/hicolor/256x256/apps/key.png
     makeWrapper ${jre}/bin/java $out/bin/KeY \
       --add-flags "-cp $out/share/java/KeY.jar de.uka.ilkd.key.core.Main"
+
+    runHook postInstall
   '';
 
   passthru.tests.version =