about summary refs log tree commit diff
diff options
context:
space:
mode:
authorDoron Behar <doron.behar@gmail.com>2020-09-21 11:10:55 +0300
committerGitHub <noreply@github.com>2020-09-21 11:10:55 +0300
commit20bd6dd45de51f9fd9cbb48f816a319dec5c872f (patch)
treeda426994bc07654ddf4e23f7b455535f6324e0bf
parent0bbeca2ff952e6a171534793ddd0fa97c8f9546a (diff)
parent090cc5d6ea548221cd7ec61b10003a446cd9bca3 (diff)
Merge pull request #98204 from charvp/pr/init-bluej
-rw-r--r--maintainers/maintainer-list.nix6
-rw-r--r--pkgs/applications/editors/bluej/default.nix36
-rw-r--r--pkgs/top-level/all-packages.nix4
3 files changed, 46 insertions, 0 deletions
diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix
index 490855b5a9903..fd1b47603a805 100644
--- a/maintainers/maintainer-list.nix
+++ b/maintainers/maintainer-list.nix
@@ -1445,6 +1445,12 @@
     githubId = 89596;
     name = "Florian Friesdorf";
   };
+  charvp = {
+    email = "nixpkgs@cvpetegem.be";
+    github = "charvp";
+    githubId = 42220376;
+    name = "Charlotte Van Petegem";
+  };
   chattered = {
     email = "me@philscotted.com";
     name = "Phil Scott";
diff --git a/pkgs/applications/editors/bluej/default.nix b/pkgs/applications/editors/bluej/default.nix
new file mode 100644
index 0000000000000..25caf4b7ac7f8
--- /dev/null
+++ b/pkgs/applications/editors/bluej/default.nix
@@ -0,0 +1,36 @@
+{ stdenv, fetchurl, makeWrapper, jdk }:
+
+stdenv.mkDerivation rec {
+  pname = "bluej";
+  version = "4.2.2";
+  src = fetchurl {
+    # We use the deb here. First instinct might be to go for the "generic" JAR
+    # download, but that is actually a graphical installer that is much harder
+    # to unpack than the deb.
+    url = "https://www.bluej.org/download/files/BlueJ-linux-${builtins.replaceStrings ["."] [""] version}.deb";
+    sha256 = "5c2241f2208e98fcf9aad7c7a282bcf16e6fd543faa5fdb0b99b34d1023113c3";
+  };
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  unpackPhase = ''
+    ar xf $src
+    tar xf data.tar.xz
+  '';
+
+  installPhase = ''
+    mkdir -p $out
+    cp -r usr/* $out
+
+    makeWrapper ${jdk}/bin/java $out/bin/bluej \
+      --add-flags "-Djavafx.embed.singleThread=true -Dawt.useSystemAAFontSettings=on -Xmx512M -cp \"$out/share/bluej/bluej.jar\" bluej.Boot"
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A simple integrated development environment for Java";
+    homepage = "https://www.bluej.org/";
+    license = licenses.gpl2ClasspathPlus;
+    maintainers = [ maintainers.charvp ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index cd2f01f6345a3..8fe1e4cd52538 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -19838,6 +19838,10 @@ in
     gtk = gtk3;
   };
 
+  bluej = callPackage ../applications/editors/bluej/default.nix {
+    jdk = jetbrains.jdk;
+  };
+
   bluejeans-gui = callPackage ../applications/networking/instant-messengers/bluejeans { };
 
   blugon = callPackage ../applications/misc/blugon { };