2018-08-15 22:37:31 +01:00
|
|
|
{ stdenv, makeDesktopItem, makeWrapper, requireFile, unzip, jdk }:
|
2015-03-12 13:00:14 +00:00
|
|
|
|
2018-04-23 14:04:09 +01:00
|
|
|
let
|
2018-03-18 22:28:34 +00:00
|
|
|
version = "17.4.1.054.0712";
|
2018-04-23 14:04:09 +01:00
|
|
|
|
|
|
|
desktopItem = makeDesktopItem {
|
|
|
|
name = "sqldeveloper";
|
|
|
|
exec = "sqldeveloper";
|
|
|
|
icon = "sqldeveloper";
|
|
|
|
desktopName = "Oracle SQL Developer";
|
|
|
|
genericName = "Oracle SQL Developer";
|
|
|
|
comment = "Oracle's Oracle DB GUI client";
|
|
|
|
categories = "Application;Development;";
|
|
|
|
};
|
|
|
|
in
|
2019-08-13 22:52:01 +01:00
|
|
|
stdenv.mkDerivation {
|
2018-04-23 14:04:09 +01:00
|
|
|
|
|
|
|
inherit version;
|
2019-08-15 13:41:18 +01:00
|
|
|
pname = "sqldeveloper";
|
2015-03-12 13:00:14 +00:00
|
|
|
|
2017-10-15 00:13:25 +01:00
|
|
|
src = requireFile rec {
|
|
|
|
name = "sqldeveloper-${version}-no-jre.zip";
|
2017-10-15 00:14:34 +01:00
|
|
|
url = "http://www.oracle.com/technetwork/developer-tools/sql-developer/downloads/";
|
2017-10-15 00:13:25 +01:00
|
|
|
message = ''
|
|
|
|
This Nix expression requires that ${name} already be part of the store. To
|
|
|
|
obtain it you need to
|
|
|
|
|
|
|
|
- navigate to ${url}
|
2017-12-19 09:55:19 +00:00
|
|
|
- make sure that it says "Version ${version}" above the list of downloads
|
2017-10-15 00:14:34 +01:00
|
|
|
- if it does not, click on the "Previous Version" link below the downloads
|
|
|
|
and repeat until the version is correct. This is necessarry because as the
|
|
|
|
time of this writing there exists no permanent link for the current version
|
|
|
|
yet.
|
|
|
|
Also consider updating this package yourself (you probably just need to
|
|
|
|
change the `version` variable and update the sha256 to the one of the
|
|
|
|
new file) or opening an issue at the nixpkgs repo.
|
2017-10-15 00:13:25 +01:00
|
|
|
- accept the license agreement
|
|
|
|
- download the file listed under "Other Platforms"
|
|
|
|
- sign in or create an oracle account if neccessary
|
|
|
|
|
|
|
|
and then add the file to the Nix store using either:
|
|
|
|
|
|
|
|
nix-store --add-fixed sha256 ${name}
|
|
|
|
|
|
|
|
or
|
|
|
|
|
|
|
|
nix-prefetch-url --type sha256 file:///path/to/${name}
|
|
|
|
'';
|
2018-03-18 22:28:34 +00:00
|
|
|
sha256 = "7e92ca94d02489002db291c96f1d67f9b2501a8967ff3457103fcf60c1eb154a";
|
2015-03-12 13:00:14 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
buildInputs = [ makeWrapper unzip ];
|
|
|
|
|
2018-08-15 22:37:31 +01:00
|
|
|
unpackCmd = "unzip $curSrc";
|
2015-03-12 13:00:14 +00:00
|
|
|
|
2018-08-15 22:37:31 +01:00
|
|
|
installPhase = ''
|
|
|
|
mkdir -p $out/libexec $out/share/{applications,pixmaps}
|
|
|
|
mv * $out/libexec/
|
2018-04-23 14:04:09 +01:00
|
|
|
|
2018-08-15 22:37:31 +01:00
|
|
|
mv $out/libexec/icon.png $out/share/pixmaps/sqldeveloper.png
|
2018-04-23 14:04:09 +01:00
|
|
|
cp ${desktopItem}/share/applications/* $out/share/applications
|
2018-08-15 22:37:31 +01:00
|
|
|
|
|
|
|
makeWrapper $out/libexec/sqldeveloper/bin/sqldeveloper $out/bin/sqldeveloper \
|
|
|
|
--set JAVA_HOME ${jdk.home} \
|
|
|
|
--run "cd $out/libexec/sqldeveloper/bin"
|
2015-03-12 13:00:14 +00:00
|
|
|
'';
|
|
|
|
|
|
|
|
meta = with stdenv.lib; {
|
2015-04-28 09:54:58 +01:00
|
|
|
description = "Oracle's Oracle DB GUI client";
|
2015-03-12 13:00:14 +00:00
|
|
|
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.
|
|
|
|
'';
|
2017-08-01 21:03:30 +01:00
|
|
|
homepage = http://www.oracle.com/technetwork/developer-tools/sql-developer/overview/;
|
2015-03-12 13:00:14 +00:00
|
|
|
license = licenses.unfree;
|
2018-08-15 22:37:31 +01:00
|
|
|
platforms = [ "x86_64-linux" "x86_64-darwin" ];
|
2018-08-18 17:06:46 +01:00
|
|
|
maintainers = with maintainers; [ ardumont flokli ];
|
2015-03-12 13:00:14 +00:00
|
|
|
};
|
|
|
|
}
|