nixpkgs/pkgs/development/tools/database/sqldeveloper/default.nix
Peter Simons 10d196c7f1 sqldeveloper: update to version 4.1.1.19.59
I also switched the build to depend on openjdk instead of Oracle's proprietary
one. I'm open to suggestions on how to determine the proper value of $JAVA_HOME
in a jdk-agnostic fashion. Right now, I just hard-coded the proper choice for
openjdk.

* pkgs/development/tools/database/sqldeveloper/default.nix:
2015-09-10 16:47:43 +02:00

46 lines
1.7 KiB
Nix

{ stdenv, makeWrapper, requireFile, unzip, openjdk }:
stdenv.mkDerivation rec {
name = "sqldeveloper-4.1.1.19.59";
src = requireFile {
name = "${name}-no-jre.zip";
url = "http://www.oracle.com/technetwork/developer-tools/sql-developer/downloads/";
sha256 = "1dbbqlz11zps9w5qvzlcv5rdv43s25c3mbzf8il1px4m2j33y3rv";
};
buildInputs = [ makeWrapper unzip ];
buildCommand = ''
mkdir -p $out/bin
echo >$out/bin/sqldeveloper '#! ${stdenv.shell}'
echo >>$out/bin/sqldeveloper 'export JAVA_HOME=${openjdk}/lib/openjdk'
echo >>$out/bin/sqldeveloper 'export JDK_HOME=$JAVA_HOME'
echo >>$out/bin/sqldeveloper "cd $out/lib/${name}/sqldeveloper/bin"
echo >>$out/bin/sqldeveloper '${stdenv.shell} sqldeveloper "$@"'
chmod +x $out/bin/sqldeveloper
mkdir -p $out/lib/
cd $out
unzip ${src}
mv sqldeveloper $out/lib/${name}
'';
meta = with stdenv.lib; {
description = "Oracle's Oracle DB GUI client";
longDescription = ''
Oracle SQL Developer is a free integrated development environment that
simplifies the development and management of Oracle Database in both
traditional and Cloud deployments. SQL Developer offers complete
end-to-end development of your PL/SQL applications, a worksheet for
running queries and scripts, a DBA console for managing the database,
a reports interface, a complete data modeling solution, and a migration
platform for moving your 3rd party databases to Oracle.
'';
homepage = "http://www.oracle.com/technetwork/developer-tools/sql-developer/overview/";
license = licenses.unfree;
maintainers = [ maintainers.ardumont ];
platforms = platforms.linux;
};
}